Wednesday, December 27

Tech Tips - Is your personal computer optimized? How to keep your PC optimized for best performance?

Another tech-tip to keep your personal computer healthy and fit. We keep installing applications, creating/deleting folders and each time an entry is made in the registry. When we remove the application & do not do a clean uninstall or cut-paste some folders it leaves junk data in your hard-disk & registry and your computer is no longer working optimally.

Here are few things you can do to keep your computer healthy, fit & optimized

  1. Don't install software that you don't need. Once every 3 months do a quick check of the installed software and remove the applications that are not used frequently.
  2. If you use some software just couple of times a year I suggest you download a portable version of the software and keep it on your pen-drive and save your computer from unnecessary clutter. Portable.com is my favorite site to fins reliable and malware free portable apps.  They even provide a portable app manager that (When you download a software do donate a dollar to help the guys maintain their good work) 
  3. Use a free tool to clear junk files from the computer and defragment the hard disk. I use CCleaner freeware to clean junk files and optimize the hard disk once a week.
  4. Use a good registry cleaner tool to keep your registry healthy. Make sure you create  restore-point before you clean the registry and do not keep more than 4 restore points on your computer as they occupy real estate. I use a wonderful tool called Wise Registry Cleaner to maintain my registry (wisecleaner.com). The tool is smart and reliable and you can take my word that it will not mess the registry.
  5. Backup your assets to a portable hard-disk and only keep the data that you access frequently. I use DSynchronize portable application (installed on portable drive) to take backup of my downloads and I always maintain enough free space on my hard-disk ( more than 50% of the HDD capacity)

  

Tuesday, December 19

The New BPM - The Real Time Business Process Management

Enterprises have embraced BPM and have optimized their business processes making their enterprise efficient, agile & adaptive. Business users have most intimate knowledge about the business operations and understand the process improvements required. Business-driven process management lets them manage the design, execution and improvement of business processes. The targets for BPM are the processes that are most important to creating value, those that will yield tremendous benefits if optimized, those that most need to rapidly change and evolve to keep pace with competitive markets. So for large enterprises moving to service based design and degree of process automation of high value processes will provide high business value.




New BPM - Business and IT collaboration and business empowerment are necessary so that business applications can keep pace with fast changing world. Today no body talks about Service Oriented Architecture & Service Oriented Design because they are now integral part of the IT standard guidelines and critical for success of any enterprise application. The new entrant Blockchain Distributed Ledgers on the other hand, creates a business network which can spans across enterprises, introducing disintermediation, distributed ownership and the risks while enabling near-real time exchange of data that can help enterprise in making faster informed decisions. The value add of blockchain is that it would provide means to prevent erroneous or outdated data within the business process. Blockchain adoption will impact existing business processes and they will have to be re-engineered to use Blockchain but it will have a positive impact by further improving quality, agility, trust and networking across business entities.
The New BPM


Saturday, December 9

Tech Tips - Securing personal computer with Microsoft Safety Scanner, Defender, Avast & Malwarebyte

There are times when Windows OS on your computer misbehaves and you are not sure if it is because of some malware or is it a Windows issue. I started getting a message that said  "Interactive Service Detection - A program running on this computer is trying to display a message". 

I had never seen such message in Windows and I suspected a virus or Malware had affected my laptop. I checked Microsoft website and found that this error could also be because of  some Windows issue. But when you are not sure you should DO A COMPLETE SCAN FOR MALWARE.  I found Microsoft Safety Scanner tool (freeware) from Microsoft which can detect & remove malware from laptop.  Safety Scanner gave a cleanchit to my laptop which meant the issue was because of some corrupt files. Next I ran Windows System File Checker tool (it is part of Windows OS) and repaired few corrupted files. A clean shutdown and start confirmed that the issue was resolved. I assume like me, not many people would be aware of Microsoft Safety Scanner so I am sharing the link on my blog. This tool works for 10 days after download ( Microsoft keeps updating the tool virus database) so if you have to again execute it on 11th day you will have to download a fresh copy

By the way I have free version of Avast Antivirus & Malwarebites freeware protecting my laptop & I also have Windows Defender installed (only one of the antivirus will be actively monitoring the Windows). There is another good tool called Sourceforge HJT that I use to do random scans for Adware/Malware. Every time I feel the computer is acting a bit funny or is getting slow I run these tools to check for malware & unwanted software.

About Microsoft Microsoft Safety Scanner ( text from Microsoft website)

Microsoft Safety Scanner is a scan tool designed to find and remove malware from Windows computers. Simply download it and run a scan to find malware and try to reverse changes made by identified threats. Safety Scanner only scans when manually triggered and is available for use 10 days after being downloaded. We recommend that you always download the latest version of this tool before each scan.
NOTE: This tool does not replace your antimalware product. For real-time protection with automatic updates, use Windows Defender Antivirus on Windows 10 and Windows 8 or Microsoft Security Essentials on Windows 7. These anti-malware products also provide powerful malware removal capabilities. If you are having difficulties removing malware with these products, you can refer to our help on removing difficult threats.
Click on this link to download Microsoft Safety Scanner

Other useful links -
1) https://www.avast.com/
2) https://www.malwarebytes.com/
3) https://sourceforge.net/projects/hjt/
4) Repairing a corrupted file in Windows using sfc command
    a) Using Deployment Image Servicing and Management (DISM) tool for Windows 8. 8.1 &10
    b) Use the system file checker tool to repair missing or corrupted Windows system files


Tuesday, December 5

Linking Aadhar to Bank is a redundant exercise & bad software design

Today PAN & Aadhar are linked (31st Dec 2017 was the last date to link Pan with Aadhar) and this is already approved by the Supreme Court. Now Govt is trying to explain to the court why linking of Bank account to Aadhar is necessary. I am surprised that  Indian goverments IT experts have not realized that this is such REDUNDANT exercise because once government links Pan with Aadhar number, and since it is mandatory to provide PAN for a bank account the bank account automatically get linked to Aadhar ( as Bank account is already linked to PAN number). So there is no need for citizen to provide Aadhar details to the bank (by virtue of PAN-Aadhar data linkage) and Banks can STOP sending threatening mails to the customers!

Wish Finance Ministry & UIDAI would hire few experienced data architects & software engineers who could explain to the government 'how data association works' and stop the bank & government from wasting tax payers money in a redundant effort to link Aadhar to Bank account!


So bank has practically no need to ask customers to give their Aadhar number. Even for new bank customers  there is no need to provide Aadhar number because once they provide PAN number bank automatically comes to know if the person has linked the Aadhar with PAN and only then they would enable his new bank account.  It id critical that government does not go on distributing Aadhar access to 'private entities that çan acheive the purpose of authenticating a customer without knowing their Aadhar number and by just knowing their PAN number.


The following picture explains it. The Income Tax department has PAN-Aadhar linked for each PAN card holder. Bank account is already linked to PAN.  The way data association works if someone has not provided Aadhar to income tax department his PAN will automatically be deactivated and bank will be come to know about customers PAN deactivation.
                                                                        Obviously government has not thought about this because their IT experts have not educated them how data linkage works. I put the blame of this useless exercise on the IT experts who are being consulted by the government of India. Indian IT engineers from private sector are designing state of art software for fortune 100 companies and it is a pity that our government is not consulting these Indian IT experts.

Monday, December 4

Linking Aadhar to Bank is such a Dumb Idea & waste of tax payers money!



Govt of India has asked citizen to link PAN-Aadhar and this is already approved by the Supreme Court. Now Govt is trying to explain to the court why linking of Bank account to Aadhar is necessary! It is such foolish thing to do because once you associate Pan with Aadhar the bank account automatically get linked to Aadhar without citizen providing Aadhar details to the bank by virtue of PAN-Aadhar linkage!

Wish Finance Ministry & UIDAI would hire few experienced data architects & software engineers who could explain to the government 'how data association works' and stop the bank & government from wasting millions of tax payers money in effort to link Aadhar to Bank account!  Why ask citizen to provide the Aadhar data to bank when bank account is already linked to the PAN which in turns is getting linked to Aadhar number?


Thursday, November 30

When will government start using Artificial Intelligence (AI) ?





AI is making an impact across indudsry verticals and AI can make even bigger impact when the Indian government's start using AI because governments touch more people's life than any other organization.  Often agencies are understaffed or overworked and people have to wait in queue for ages. AI can't replace humans but it can reduce the work load of humans. These are some areas where government should start implementing AI.

1. Process Automation
Through out the government departments, there are backlogs of many types: cases, requests, applications, etc. AI enabled software could speed through these backlogs and prioritize critical tasks and even find solutions to some basic Yes/No tasks thus reducing long pending tasks. AI could reduce the size of the backlogs, let humans focus on the challenging requests and speed up the processing.

2. Recruiting Automation
The Indian government is the one of the largest employer with a huge backlog of vacancies from teachers to officers and the biggest challenges among all organizations: is hiring adequate talent. One way the government could take advantage of AI is to adopt recruiting automation technology to streamline candidate sourcing, automate interview scheduling

3. Disaster Management
Artificial intelligence is a set of powerful technologies that can derive insights from tons of data to keep us safe. From predicting earth quake and aiding in rescue efforts to warning us of external threats and even automating high-risk tasks that we is done by government everyday. By enabling these technologies to help keep us safe governmental bodies can do their part to make India a safer place.

4. Cybersecurity
Cybersecurity is a growing concern for both government and financial institutions. Adversaries are leveraging AI in their tools, techniques and processes. Governments should leverage AI for vulnerability, threat and risk management. AI can help in forecasting, preventing and mitigating risk by using AI enabled self learning * self defending software
.
5. Taxation
One way that government could take the most out of AI is by coordinating the financial analysis from multiple transaction mediums for taxation purposes. No more tax evasion and no more double taxation and faster tax refunds using AI.

7. Irregular Financial Activities
Applying artificial intelligence in the government can make services faster and more tailored. One way that the government can use AI to its advantage is by detecting irregular financial activities like money laundering, terrorist financing and fraud.

8. Health Care Services
Our barely-existent health care systems and pension systems are a major strain on the central and state budget. Governments are trying to improve these systems and with AI and distance medicine  the costs can be reduced. AI can also automate government grants, health insurance claims and identify fraudulent claims and fill in for the lack of resources and long queues.For minor illness automated medical system can provide medical advice to those in remote corners of India till they can reach a doctor.

9. Security Agencies
AI is the process of simulating computers to have the capability of imitating intelligent human behaviors.AI can be used in various ways in immigration services,  for crime prevention and solving criminal cases using a centralized AI intelligence.

10. Auditing Efficiency
Using AI, the most likely candidates for audit could be quickly brought to the top for human inspection. It's important to keep the human element, but for quick evaluation, AI can have a much better return on investment particularly in prioritizing audit tasks

11. Judiciary / Courts
One of the longest backlogs by any agency is probably in the legal systems. The nature of work is such that the petitioners themselves delay the cases till they get a satisfactory solution but the legal sytem wants to deliver a well informed and just verdict and AI can help judiciary deliver it. One cannot even imagine the new judiciary and they way it will transform the justice delivery by using AI & ML by delivering critical ipupts to the judges and also in dismissing trivalent cases .

Monday, November 27

BPM & Blockchain


Business Process Modelling is a digital automation framework that helps organizations improve overall efficiency and the ability to execute consistently by decoupling the business process logic from the code or service layer.  This streamlines business processes within an organization where participants normally trust each other. Innovations in areas such as case management, event processing, business rules, and integration mechanisms help organizations address strategic goals by implementing new and continuously improving existing business processes. Business processes rely on data from information systems outside their control, even data from other enterprises. This data must move between organizations, or even between enterprises, which is not only complex and expensive but often results in stale and inconsistent data. Lack of transparency and trust is the consequence.

Blockchain

Blockchain helps solve trust and transparency issues in business networks that span organizations for the following reasons:
  • Participants in the network use a shared ledger to perform transactions on assets.
  • Transactions are validated by participants through a consensus protocol.
  • Smart contracts control transactions between participants, which therefore do not need to trust each other. Smart contracts ensure that contractual conditions are met, and obligations are enforced
  • Permissive blockchains ensure that all information and transactions on the blockchain are available only to network members with the right permission.

    BPM and Blockchain

    In a combined BPM-Blockchain solution, the shared ledger provides the interface for business processes — a process queries asset information and performs transactions directly on the ledger.  Stale or inconsistent data is no longer an issue.  In addition, business events on the blockchain initiate or trigger business processes, ensuring that the right organizations are involved and react to events in a timely manner. The integration of both business process management and blockchain helps you to reach the next level of real time integration and automation of business processes that can help significantly improve your business processes.

Monday, November 20

Don't you Blockchain yet?

Blockchain is a distributed digital ledger that enables and records the secure transfer of data and documents through a public or private peer-to-peer network. Blockchain allows secure management of a shared ledger & transactions are verified & stored on a network without any governing authority.  Blockchain configuration can be on a public opensource network or a private Blockchain network that required explicit permissions to read/write.

The best applied example I have read is of an automotive industry. A car has a manufacturing defect that results in a part being replaced. The typical communication chain could follow the following pattern:
  • The car owner brings the car to the dealer to diagnose a problem
  • Car dealer inspects the car and notifies the manufacturer about the faulty part
  • Manufacturer works with the part supplier to determine where the fault lies
  • Part supplier and manufacturer agree that the part is faulty, then notify the dealer
  • Car dealer notifies the customer
  • Car owner brings the car back to the car dealer for part replacement 
In this scenario, communication among the customer, car dealer, manufacturer, and part supplier is delayed by incomplete information, so full and accurate responses along the chain are impossible. Second, all communication goes through email, telephone, or postal mail, and the customer has to visit the car dealership multiple times to have the part replaced, possibly being unable to use the vehicle until the car is repaired. This is a very shabby customer experience.

Now let’s look at the customer experience when blockchain & technology platform are combined. In the same scenario, the communication chain will be as follows:
  • The IoT sensor automatically notifies the manufacturer, car dealer, and car owner about the defective part
  • Car dealer contacts the car owner and sets a service appointment for an inspection
  • Car owner brings car to the dealer for inspection, which confirms the faulty part
  • By now the information about the faulty part is already put on blockchain, which has by now notified all the parties – manufacturer, insurer, part supplier, car dealer, and owner
  • Manufacturer, dealer, and part supplier collaborate to analyze the car’s IoT sensors and dealer inspection report to identify where the fault lies
  • Manufacturer gives an instant approval for part replacement on blockchain, which automatically notifies all parties
  • Car dealer replaces the part and delivers the car back to the owner
Impressively, all of this happens on the same day, during the 1st service appointment, and the customer is continually kept informed as the vehicle proceeds through the diagnosis and repair process. As we can see, there is a tremendous potential for developing applications that use blockchain in Internet of Things solutions. This combination can not only solve many of the key problems in process efficiency, user experience but also enhance it by automating many customer service processes along the way.
                                       
                                                                             




Sunday, November 19

Be careful of what you share on Facebook, Google & Internet

Data privacy is important & critical for our own security & safety. We tell our kids, not to talk to strangers & not to share family details with unknown people but what about the data you are 'willingly but unknowingly' sharing on the internet everyday? Let me tell you about a real life incident. Few years back one American company mailed baby product catalog to a couple and they were surprised because they had recently planned to have a baby but the wife was not pregnant. The net savvy couple did some research and found out that the shops and website were selling their credit-card purchase history to marketeers and from the history marketeers were able to predict that the couple were planning to have a baby and sent the baby product catalogs even before the lady was pregnant!  
                                        You think it is impossible? I can prove it to you that it is very easy to predict such things using Data Analytics if you have a persons credit history, in other words 'Person's Personal Spend Data'. How could a company share/sell your credit card history with some other company? Well when you took the credit-card you never told the company to not use your purchase history for future marketing (Did you even ask them what they do with your data?) so if you decide to sue the company then it will be a long court fight & few people have sued companies for breach of privacy (or what ever legal term is used now) and managed to get compensated for misuse of complete or partial personal data.

Have you ever wondered why websites start displaying ads about a product that you have viewed on Facebook or a product relevant to a post that you recently viewed on Facebook? For example I viewed 'Eurovigil Eureka Forbes Page' on Facebook and within seconds when I went to IRCTC website it showed me Eurovigil ads (I disable cookies on my laptop so it was not because of cookie tracking!)  One of my friend who is not from software industry was excited that the websites were getting smarter and showing relevant ads! But how does a website get smarter? No magic here, the smartness comes from your personal information/data that you willingly share/upload or worse, data that is getting tracked without your knowledge. To give you a smart personal advice, why does a website have to know about you personal data - Age, M/F, City, Single/Married. Kids, Kids age, your company name, buying pattern, dressing style, electronics you use, financial status, do you use a 95K IPhone or are you a cheapo who uses 1.5k phone?  No offense, but that's how marketeers profile us and then sell the information to other marketeers. So if the website smartly suggests a product or service then you should know it has access to some information you directly/indirectly shared somewhere on the internet or else your credit card provider has shared with some company. Those of you who are not from IT would be surprised to know that new age companies keep a watch our your social-media post and use this data to understand customer sentiments, this science is called Sentiment Analytics & Predictive Analytics.  Let me tell you that not all companies use this data to spy on you, some companies use this data to prevent crime. For example Credit card companies 'ALSO' use huge computers to collect social media posts  (Facebook, Google, Twitter..) to prevent fraud, telecom companies use this data to prevent SIM fraud and also to decide costing of their mobile plans but the point is 'companies are all reading your posts every day and they perhaps know more about you than your close friends!

Software companies internationally have been fined billions of dollars for collecting, storing and misuse of personal data of users without taking users consent. Facebook, Google and other companies can afford to run lakhs of servers and thousands of employee to manage the server across the world & still not charge you a penny because they earn much more by SELLING PERSONAL DETAILS OF USERS. FB account holders like me who are aware usually provided minimal information on my Facebook account & in spite of the precaution FB is still profiling me from every FB post I read, every ad I click on FB, every comment I make on FB and then Facebook is tracking what you do. Facebook is .....(even Google does it)

  1. Storing the data ( because we gave FB permission to store data when we created an account and accepted the agreement without reading it) Tomorrow if you want to wipe of your personal data from FB you would be able to delete your account but you will never be able to remove the personal data which is already part of FB database and the persona data that FB shared with other marketeers.
  2. FB is using your data to create a virtual profile of you
  3. Using your data to push relevant ads to you
  4. Sharing/selling the virtual profile data to other websites (that's how IRCTC website's 'Advertisement Service' knows I am interested in Eurovigil)
  5. FB and similar websites know about you, though your post and friends they know 'names of each of your relatives and even have photos of your relatives and friends'
  6. Data is everything. We can create a virtual person, apply for credit cards and open bank account online without visiting the bank if we have the personal data of a person.

We are caught in the 'Internet Of Things Data Mess' and marketeers & companies that sell personal data are the big winners. As long as you use internet someone will soon get you personal details and your activities ( that's right not just Facebook & Google almost all websites collect personal data including location data). Your husband or wife may not know that you ordered the grocery while you were enjoying Cafe Latte at Coffee Day but "The Internet Companies Know It & Will Use The Information"  and there goes your right to privacy. What you can do is be careful while registering on website and using social media and not volunteer personal details that you feel should not be made public. For you to enjoy social media or get discounts from website you don't have to share details like whether you are single/married, who are your relations, your detailed address, your  company name etc. These details could be sold to some company and then to another company & so on till every marketeer knows about you.

How facebook collects data about users & non-users:


Facebook collects data from non-registered users in two main ways: From their browsing history and from their friends. 
  1. Websites that use Facebook’s advertising pixel (Like/Share button) – send data about those site visits back to Facebook (browsing history, IP…).
  2. “If those Like/Share buttons are on the page, regardless of whether you touch them or not, Facebook is collecting data,”
  3. So 'if you’re logged into Facebook with the same browser you use to surf the web, the company knows exactly who you are and the vast majority of the websites you visit' if you’re not logged in, the company can still associate the data with your IP address and all the websites you’ve been to that contain Facebook code.
  4. The other main way Facebook gets info: its contact upload feature => To link different accounts having same contact email or phone numbers. I would never advice you to share your primary email or phone number with Facebook or social websites.
Facebook track your location when you’re using its apps. Even without access to your accurate location data from the smartphone, Facebook uses information from your browsing habits, including IP address, Wi-Fi network, and Bluetooth to pinpoint your whereabouts and place relevant ads inside its apps. Facebook uses city and zip level location which Facebook collects from IP addresses and other information such as check-ins and current city from user profile. ( I always disable my location on my mobile phone - no one has any business to know my location!)

Solution to avoid/reduce tracking:

There are some tricks, too avoid getting tracked by internet service providers: 
  1. Using different email addresses for different services, and even different browsers, can help enhance your privacy, according to privacy experts we consulted. You can use primary email address for communication & create a 2nd email address (provide minimal or psuedo personal details) to register for various sites
  2. Using privacy browsers: Tor, Brave etc
  3. Using script blocking:  by using browser addon like Ublock origin, NoScript, PrivacyBadger
So if you are meeting someone handsome/pretty without your other half knowing about it don't use credit card to pay the bill & switch off both your cells to avoid location tracking or else 'The Boss' will find it out!



Friday, November 17

Real Time Tracking of Highway Development & Maintenance

The national highways network of India is a network of trunk roads that is managed and maintained by agencies of the Government of IndiaIndia has 100,087 km (62,191 mi) of national highways (NH) connecting all the major cities and state capitals as of June 2016. National highways comprise 1.7% of India's total road network, but carry about 40% of road traffic. 

Current government has ambitious plans for increase highway coverage & improving quality of highways. As Digital India spends more on infrastructure maintenance & new highway construction it is important to use Affordable & Available Technology to monitor the development and reduce pilferage of funds. By affordable & available technology I mean use of Mobiles Sensor, GPS, Big Data Analytics & Predictive Data Analytics. Managing & monitoring highway development projects can help government monitor work in REAL TIME'  (daily progress, as the works gets completed) and bring transparency. and implement Dynamic Investment by diverting money to projects that are financially more viable as compared to projects that are getting delayed due to unavoidable circumstances like unavailability of work force etc. 




A sound IT solution should help help government improve
1) Ensure Consistent Quality of highway construction across India (and also Water Ways which is another project initiated by the government)
2) Real Time Status of work- by collecting daily progress data using mobile phones and GPS sensors in mobiles
3) Avoid & restrict delays by leveraging the daily progress data feeds

4) Perform smarter fund allocation based on trust worthy data collected via GPS sensors and camera

5) Big Data processing can be used to progress this huge amount of data and get meaningful reports that can present reports of all development activities in a single screen, also called Dashboard

6) Predictive analysis as the name suggests uses all past data to predict what can happen in future. For example which projects will complete work before time & which project will make loss and why. How much work will get completed by the year end? Which projects are making optimum use of construction material and which projects are wasting funds?  

The following graphic illustrates how we can implement a simple solution to monitor road development with mobile devices. 


Digital in not limited to bottom-up or top-down approach, digital is everywhere. Today every one uses a smartphone and we promote use of smartphones to collect data in real time. Real time monitoring will help monitor progress, detect issues faster and avoid pilfering of public funds. Hope Govt of India builds a similar simple solution to monitor the Highway Development.

Sunday, November 12

How to become a Technology Architect

Almost every developer wants to be a technical architect one day but most are not aware of various responsibilities of an architect & the road-map to become an architect. Fact is the the role & responsibility of a Technology Architect changes and evolve in response to the specific business context, project size, complexity & phase, technical constraints & technology landscape of a particular project. Despite the great variation, that there are certain responsibilities that are common to the role of Technical Architect in a delivery project

  • Technology Vision,
  • Delivery Focus,
  • Technology Skill,
  • Customer Relationship.
  • Organization & Management 

Technology Vision

There are some important differences between the architect and developer. An architect must take responsibility for the overall technical direction of the project and the product whereas the developer will be given responsibility only at component-level. He or she needs to assure that it will stay open for changes and that these changes can be implemented in a technically excellent and cost-effective way.
This requires a rather different skill, in predicting and anticipating these requirements, and having strategies and plans in place. This isn’t just experience of the development project cycle but a matter of asking the right questions at the right time, most often at the very beginning of projects. The start of a project is generally a critically important phase, because all the decisions that are undertaken during this period can affect the success of the entire project, for better or worse: This is true even of agile projects.
In order to find the most appropriate architecture and components, the team must not only focus on determining the business goals and requirements but also on clarifying the functional requirements. These functional requirements will include cross-cutting concerns like performance, scalability, compatibility, internationalization, branding, security, auditing, diagnostics & logging, fail-over and disaster recovery. The consequences of ignoring any of these topics at the beginning of the project can be catastrophic, though a smart architect can transparently enable some of them later, by creating an architecture that is open for such changes or extensions. .
As part of the task of determining the architecture and components, the technical Architect must identify the most suitable technology stack and frameworks. The architect does some research, finds those third-party solutions that are most appropriate, and proposes how to integrate them. By using third-party components and frameworks, the efforts and energy of the team can be focused primarily on solving those challenging problems that actually require writing code.

Delivery Focus:

Responsibility for the quality and effectiveness of code is, of course, shared by the whole team; however, an architect needs to challenge the team and help it to implement even better code which meets industry standards. This can be achieved by evangelizing and promoting good principles & practices (SOLID, KISS, DRY), tools, metrics – or just by giving a good example in doing regular development tasks. This last aspect is very important because it helps the architect to stay close to the team and technical nuances as well as allowing him to double-check how well the proposed design materializes in code.

Technology Skill Development

An architect is an integral part of a team but, because of his experience, he has a large impact upon a team and imprints his mark on it. While proposing a solution, the architect must be sure that the team he is working in shares the same vision. This vision should be well understood and accepted by the team, so that the solution is correctly implemented. Moreover, the team should be able to take over the proposed solution, develop it and feel and act as is they own it. To achieve these goals a TA needs to work on two fronts: in addition to such obvious aspects as training, code review, daily coaching or a team’s involvement in the application design process, it may be necessary to align the solution to the skills and profile of a team – this applies both to the technology stack as well as to development tools.
Last but not least, as the project grows it is very important to delegate responsibility for some aspects of the application to the team so as to engender a good team spirit, and foster professional growth. At some point in the development cycle this may become a necessity, because the architect is not an expert in all the technologies and techniques that are used in a project.

Positive Customer relationship

The TA role, next to the Project Manager (PM) and Business Analyst (BA), is key in keeping a good relationship with the customer. This might take a different form depending on whether we are relating to the IT department or directly with business people within the client organization. Nevertheless, the most important foundation of this relationship is always mutual trust and understanding. Having the customer’s trust allows an architect to operate effectively with a high level of confidence. It guarantees a proper level of autonomy and shortens the decision-making process, allowing the architect to react quickly to emerging challenges that very often occur in agile projects. Of course, this trust is partially based on the proper records and registries, which make an architect’s job as transparent as possible. Depending on the project, the TA may leverage a decision log, technical debt log, risk & assumptions list, or just a product backlog, on which a TA keeps the key components or actions in the form of product backlog items.
Looking back at the history of the relationships with our customers in various projects, we noticed that the TA, BA and PM act as the voice of the team. They care collectively about the consistency of communication on a business- and technical-level. Proper cooperation of these roles empowers the team and allows it to move to a higher level of collaboration. Instead of just focusing on daily tasks, the team becomes a trusted software and competencies provider, a supplier who shares its practices, processes and values with a customer.

Delivery focus

Of course, all of the actions above should, as a consequence, lead the team and the project to a successful end, bearing in mind that, for the customer, the most important thing is the successful delivery of the project. Therefore, it is crucial for the architect to know the release plan and make certain that the technical vision fits it, by planning related actions (e.g. release support) and deliveries (creating packages, writing deployment scripts) on a project backlog and prioritizing them appropriately.
On the technical side, in addition to proper design, it is also important to take care of operational and infrastructure aspects; without consistently configured environments, a code repository, bug-tracking system, project-tailored continuous integration & deployment flow, the project delivery may be at risk. Obviously, as in previous cases, the TA does not have to do the work associated with the implementation of these aspects with his own hands; he rather collaborates with the PM and Release manager to ensure them and to deliver upon the team’s requests.

Organization activities

As well as all the project-based roles, Technical architects will bear responsibility for several organizational and management tasks. Technical architects in most organizations are organized as a virtual team that is engaged in many working with different tasks at the company level. They are responsible for the company’s technical competences by looking for new technologies and techniques, which are recommended to the developers and it engineers through training, workshops or newsletters. Additionally, experience gathered in many projects of a very different nature, empowers Technical architects to define an internal development infrastructure and standards like source code repository, bug management systems, code quality metrics and coding guidelines, Moreover, depending on Technical architects specializations, they also personally support projects, technology groups & communities and areas of specialization that arise on cross-projects / company level, like performance community, test automation group, Technology Architecture Groups, etc. It is especially important to support and foster this last group; Technical architects are aware how important is the reliable Continuous Delivery infrastructure and so they participate in a process of creating a company wide vision and standards in this area.
Technical architects  also ought to support thought-leadership initiatives in the areas of development and delivery. They provide very important input to the sales process by rendering work breakdown and estimates in all of a project’s winning phases. Finally, they very often act as line managers for developers, or mentors for Technical architects candidates. As the consequence they  play a very important role in the team members’ induction and growth by conducting the training and workshops or organizing coding events.

So get started on , empower yourself with relevant training and certifications that will help grow your understanding of different technologies and architecture and try for opportunities where you can work on small projects/modules that give you can opportunity to work as an architect. Don't be afraid of challenges and be willing to put extra hours to read/research/experiment with your architecture. Your experience will build your credentials which will help you get bigger opportunities and you will soon be on the move!

How to select a BPM (Business Process Management) product?

I have been working on implementing BPM since 2005 and one of my tasks as BPM Architect leading the BPM practice in my company was to do vendor comparison of software products and publish Accenture's  POV (point of view) about the software. As architects we also recommended best fit software to our client and our solution architects. BPM is one of the products that I have evaluated multiple times. I received an email from software engineers on how to select a BPM product and I decided to post my views on 'Software Product Selection' based on how we evaluated software for our clients, most of the clients were one of the Fortune 100 companies.
                     Gartner's Magic Quadrant & Forrester's Wave are 2 popular software vendor evaluations that I usually refer to get an idea of features and offerings of software products. These product evaluation and ranking are purely for reference as they consider many different criteria to position a software product as Leader, Visionary, Niche player or Challenger as Gartner classifies them. 

Here is Gartners Oct 2017 Magic quadrant for Intelligent Business Process Management Suites


And this is the Q1 2018 Forrester Wave Report


In the above chart I would not really worry about the X & Y coordinates of the software as long as they are both are Leaders quadrant or even in Niche Player or Visionaries or Challengers Quadrant if they offer the features that are important for my solution.  In fact, BPM is fast changing landscape and new features are offered almost every quarter.

If you are out to select a BPM product my recommendation is to
1) List key requirements of your solutions (do consider long term requirements as well)
2) Go through vendor comparison reports and product manuals and evaluate each vendors product features, have a look at the demo videos of these vendors
3) Select top 2 products that match your requirement.
4) Implement a prototype, ask your business users to go through the prototype  and then shortlist the BPM product.
5) Some vendors claim to have a various feature but in reality the feature could be part of their future enhancements and you may have to wait for 6 to 12 months to implement the feature. So make sure you discuss all the critical requirements of your solution with the vendor and ensure they are supported in the software version that is you intend to use.

For all you know your architect may recommend Pegasystems , or Appian or  IBM BPMor even TIBCO Active Matrix BPM based on your requirements. So do not blindly go by the Forrester Wave or Gartner Magic Quadrant, do your homework and you will not regret it. 

Sunday, September 10

Getting the best out of your WIFI Connectivity

The most annoying issue of internet experience continues to be WIFI connectivity. There are 100s of Tips on the internet for some complex problems but for a home user THESE 4 tips ARE ENOUGH to optimize wireless settings - they worked for me so I am sharing them! If your Windows 8 or 10 is showing 'Limited WiFi connectivity or 'No Internet Access'  the following steps will help you repair and troubleshoot the situation.

1) Check Windows Update -

Check if you have disabled automatic windows update for some reason. MS Windows update solve the known issues to disabling update defeats the purpose. If there are any pending Wireless or Network related Windows Update download the updates and install them and check they solve the issue.

2) Reset TCP/IP Stack and Auto tuning


Assuming you have performed previous check, resetting TCP/IP stack is the next step. TCP/IP settings can easily be reset or Auto tuned through the Microsoft Windows very own Net Shell utility (netsh.exe). Have a look at the procedures below for the practical implication of this utility.

Click Search icon on the Charms bar and type 'Command Prompt' in the 'Search' box, Right click the search result and choose to Run as administrator

Type the command NETSH INT IP RESET C:\RESTLOG.TXT

and press Enter key

3) Try Disabling Power Saving Mode -


Assuming you have performed previous check, open up Device Manger and within it Network Adapter, right click the wireless adapter you are using then click on Properties, you will have the option to turn off power saving in the power management tab.


4) You can also download & try fix using Microsoft Fixit utility


The self fix utility takes care of fixing Windows setting for optimum internet
https://support.microsoft.com/en-us/help/299357/how-to-reset-tcp-ip-by-using-the-netshell-utility


Most of the times these 4 steps will resolve your issue.


Wednesday, August 30

Real estate industry : How to gain competitive advantage with your enterprise mobile app strategy?

The immense growth in the use of mobile technology, specifically consumer-facing real estate technology, means change for Realtors when it comes to communication, research and reporting for mobile-first clients.Most Realtors use mobile technology to send new house alerts, neighborhood reports, and financial information to registered users.Realtors, buyers and sellers are all using mobile technology to navigate the real estate industry.

Mobiles Usage

Stastica.com link - Mobile Usage vs Mobile App Usage




So what is the next game changer for Real Estate?


Multiple 2018 report by analytics firm like Flurry & Nielsen revealed that the average Indian smartphone user spends 90 minutes per day on mobile application and the premium segment spends 130 minutes per day. An average U.S. smartphone user spends 5 hours per day on a mobile device, a 20 percent increase compared with 4Q 2015. An average Of that time, 92 percent (about 4.6 hours) is spent inside a mobile application. Real Estate industry has taken to the internet but they are yet to capitalize the power of Mobile Devices. When potential customer is 'Connected' over mobile device the service provider has to provide service using Mobile Applications to stay relevant and competitive. Period.

How apps have changed the game?

Apps enable realtors across to perform specific tasks on the go, such as viewing data, aggregating buyer queries, scheduling real estate visits and opening lock-boxes. Some mobile applications allows agents to send custom reports to clients via app-based messaging. Realtors can 'PUSH' information to buyers and sellers by customer's preferred electronic channel - email/SMS/Whatsapp/etc. This type of simple, customized communication can save Realtors valuable time. Search is the most used functionality in a mobile application because it allows user to utilize the time while he/she is traveling so well designed search that give accurate, meaningful results and is presented in a user friendly User Interface. Personally I feel there is also a need for behavioral change in Real Estate industry and adapt to the habit of mobile savvy Millennial Consumer and provide information in digital format which reduces frequent personal interaction. Millennial consumers wants the service provider to PUSH the most relevant information to them and they also want to be equipped to PULL information on demand. Internet is about 24/7 business and that means real estate can no longer be limited to their human team working 9 to 9. The industry needs to add a virtual team member in guise of a mobile application that caters to the consumer 24/7.

How real estate professionals can leverage mobile technology?

  • For recording voice notes about potential property listings
  • For recording video footage and photographs of property
  • For sharing video and photograph of property
  • For  monitoring appointments & time management
  • Running mobile marketing programs
  • Promoting company brand using mobile applications
  • Secure messaging for image and text communications
  • Electronically.signed real estate contracts & document management
  • Customer Relationship Management
  • To get latest industry news 
The real estate industry is very competitive, every customer can be connected via mobile device so it is important to use mobile to stay ahead of the game. Today’s mobile technologies provide a huge capacity for brand building & marketing services and products to a worldwide audience via email campaigns and online advertising. Traditionally real estate data has not been maintained in digital format. Now real estate agents can establish databases that allow them to target particular properties at specific groups of clients. These agents typically spend a considerable amount of time out in the field, either showing or viewing properties, and mobile devices allow them to stay connected.


Connected Customer, Lifestyle Changes &  Real Estate

  • As many as 60 percent of homes in the U.S. and India are purchased by people who are between the ages of 28 and 45, which is the age group that is always connected via computers & mobiles.
  • Mobile devices allow potential property buyers access to property images and details 24/7 without having to talk to a real estate agent.
  • Websites & mobile applications enable uses to compare property features of shortlisted properties
  • Software allows home buyers to store 'User Property Preference' in databases & relevant details of applicable listings can be 'PUSHED' to them as soon as they are available (Real Time).
  • Potential buyer, the realtor and vendor are always connected over mobile devices.
  • Buyers expect details such as home features, information on school districts and neighborhoods to be available over internet & mobile devices.
  • Mobile technology is no longer an edge technology but an essential vehicle to stay connected with potential buyers & delivery of information.
  • Mobile app is not just an extension of your website but a tool that help you streamline your business and stay connected with clients.

The advanced 'Mobile Applications' should leverage technologies like Real Time Service, Big Data, Dark Data, Social Analytics, Predictive Analytics, Artificial Intelligence & Machine Learning for better understanding of customer requirement, improve recommendations and reduce churn. But first things first, stay connected & keep listening to the customer!


Saturday, August 19

Do you have a Cloud Computing Strategy for your organization yet?


While discussing Hybrid vs Public Cloud with a client I realized that they still did not have an strategy for using Cloud for the enterprise.Cloud Computing has been here for a decade and yet cloud computing issues are still perplexing many CIOs. Studies indicate that less than 10% of enterprises have a well defined Cloud Strategy. All the new applications development in the next few years would have to follow the enterprise Cloud Computing strategy. Having a well planned Cloud Strategy will enable business to apply its tenets quickly with fewer delays, thus speeding the arrival of the ultimate business outcomes. So if your CIO still does not have a Cloud Strategy for your enterprise it's time he should define one. The 1st step in the journey to the Cloud is to understand the multiple aspects & phases of Cloud Computing.

                                            Soon everything will be served on the Cloud !

Cloud computing : 

The average cloud spending across industries is anything between 5 to 10% and most organizations are migrating on premise data center to cloud. The spending is projected to grow every year as legacy applications are migrated and new applications are built. A key benefit of public cloud infrastructure as a service (IaaS) and platform as a service (PaaS) is to place applications closer to customers to enable a better user experience. Private cloud computing is also being exploited, especially where intellectual property, control, regulatory or compliance concerns, security, performance, and cost of service delivery are differentiated. In such cases, private clouds run on-premises, in co-location facilities or at provider facilities, and they can offer similar benefits to public cloud computing. Organizations are also exploiting Hybrid cloud computing with focus on  integration between the internal and external (or two or more external) environments at the data, process and/or security layers.

Defining a case for Cloud Computing : 

Next step is to define a Cloud Strategy based on the business vision and the digital strategy. Digital business requires speed and agility that cloud computing provides through the use of cloud services – which become available to a broader set of users through a dynamic self-service interface. Users “help themselves” to these cloud services, stimulating creativity and innovation.

CIOs need to educate their organization about the need to invest in cloud as a style of computing that drives greater speed, agility and innovation through this democratization of IT and the benefits they can derive from Cloud Computing. Organization's digital business strategy should justify the investments needed for cloud computing.

Design for Cloud  : 

Just using cloud services is not enough: you must optimize your application design for the cloud. Migrating applications to cloud requires change in application architecture and design. Unless we adapt the design to Cloud Computing we may land into badly designed application with poor scalability and performance with high maintenance overhead. We have to optimize our applications for cloud computing with the explicit purpose of getting the most value at the lowest effective cost. New applications essentially have to be designed for the Cloud and migration of legacy application should also be designed for the cloud.

Finally a picture of a sample Cloud Strategy Road-map for an enterprise.




Tuesday, August 15

Securing Mobile Applications

Mobile applications draw the attention of hackers more and more each day because they have something that the attackers want, user personal data. Hard-coded secret keys, personal information stored in plain text on SD cards, usernames and passwords found unencrypted in databases, analytics collected and sent in the clear to remote servers, are just a few cases that make the life of an attacker easier.

So how do we protect data on mobile phones? To protect sensitive data, and ensure confidentiality and/or integrity developers have to use Cryptography. There are many cryptographic libraries that can be integrated into Android applications. Cryptographic libraries can be seen as cryptographic tools that contain tools, such as encryption algorithms, padding schemes, and hash functions.

Few of the common basic cryptography libraries are as follows -
1) AeroGear (Crypto AeroGear) Apache 2.0 license
2) Conceal (Facebook) BSD license,
3) Keyczar (Google) Apache 2.0 license

Once you decide to encrypt appication data you have to decide how to implement it. What encryption algorithm should you use, AES or DES? How long should your key be, 128 or 256 bits? Which encryption mode should you use, ECB or CBC? If you do not have an answer to all these questions, along with a good reason for each answer, then it seems that you have found yourself in a position where, although you probably have all the tools you need, you are not absolutely sure which ones to use and how.

The cryptographic toolkits do not implement any exotic cryptographic functionalities, nor do they intend to replace the cryptographic libraries presented above; they rather built on some of them with the sole purpose of making cryptography easier and safer to use.

These toolkit may supports only a subset of the algorithms, modes, schemes, parameters, and other cryptographic tools that are out there. Instead it provides you with sensible defaults in case you (a) know what you want to do but don’t know how to do it, or (b) don’t really care as long as you end up with a safe solution. Let’s examine some of these toolkits to better understand their role.

There are many good sites to learn more about cryptography & one of the websites I can recommend  is  https://www.garykessler.net/library/crypto.html

Monday, July 3

How to start innovation? How to build an 'Innovation Culture' in your organization?


In an organizational culture is a system of shared assumptions, values, and beliefs, which governs how people behave in organizations. These shared values have a strong influence on the people in the organization and dictate how they act, and perform their jobs. Organizations today have high focus on innovation & innovative offerings and it is imperative that organization adopts innovation as part of the organization culture.

                                  Innovation culture can be defined as the work environment that organizations cultivate in order to nurture unorthodox thinking and its application. Organizations that foster a culture of innovation subscribe to the belief that innovation is not the province of top leadership but can come from anyone in the organization.
                    Many organizations claim to that they support innovation. Plan are made on how to go about investing in INNOVATION & providing resources towards the innovation work. But when look at the program over months organization's support seems to be lacking in terms of fostering innovation. Their Reward & Recognition systems do not support innovation or they just stifle it. Usually the problem is that companies have review systems designed to ensure only Completed & Successful projects and programs are recognized. True to the service culture organizations only look at today’s results and not towards the future.
                                                          The CTO directive says  “go innovate,” but the organization usually supports taking 'Only Those Risks That Will Ensure Success' and that seems to defeat the Innovation Culture. GE would not be GE if they had no invested a huge amount of talented resources in research & promoting innovation but most organization defer from allocating the most experienced resources to innovation teams.
So what  needs to change? The answer is Possibility Thinking – starting with a clear definition of where you want Solve with your innovation and then spending time trying to figure out what is required to make it happen. Not focusing on the next single improvement, but rather the final picture first. This frees us from the constraints of the current system and processes and allows for a more open field of possible routes to get to a solution.

                                                                                  

                                      A 5 point approach for building Innovation Culture


1. Innovation Strategy:  Company's Innovation Strategy should be a combination of Top-Down & Bottom-Up collaboration of ideas. A lot of organizations want to innovate but the leadership team has no clear strategy around innovation. Instead, employees are given a broad and general remit to come up with great new ideas. This can lead companies to work on a number of unconnected products and services. In addition to this, innovation teams can find that some of the great ideas they come up with have no internal support from managers because they were never on anyone’s agenda to begin with. What companies need is a clear Innovation Vision that outlines the key trends impacting their business and how the company plans to use innovation to get ahead of those trends. This Innovation Vision should provide a simple guide of the types of innovative ideas the company will invest in. Innovation starts with the strategic decision to pursue specific types of ideas. Innovation tools can then be deployed as best practice to deliver on the chosen innovation strategy.

2. Innovation Funding: Corporate leaders can stifle innovation by how they make decisions to invest in ideas. Whether it is investment of money or resources, investment decisions making is perhaps the most powerful lever managers have in transforming a company's culture. If employees are required to write long business plans before they get any money, the company will end up rewarding the kinds of people who are happy to write such plans. Such practices tend to exclude the creatives and leave them out of the process. Furthermore, innovation succeeds through making several small bets and seeing what works. If the Business planning involves five-year projections, detailed delivery plans and an ask for a large amount of investment money then after a large investment is made, innovation teams are then managed by whether their project is on time and on budget. Such large investments based on detailed plans limit the number of bets a company can make. Since most innovative ideas fail, increasing the number of bets is a good method for discovering ideas that work. As such, what companies need is an investment process that allows managers to make Small Investments on a number of strategically aligned ideas, support employees as they test their ideas and then double-down investment on those ideas that demonstrate traction.

3. Collaboration: Innovation is a team sport. It requires excellent collaboration among siloed business and functional units, across geographies. Finding the best resources in your organization and combining them is a hallmark of successful innovation. To find the best solutions, you need to leverage the full range of expertise across your organization. This requires one to pull capabilities from across the company; this doesn’t happen when people are working separately instead of collaboratively. Another important aspect of innovation is involving the customers to create a breakthrough product.

4. Motivators -  Intrapreneurs are the employees who couple an entrepreneurial mind-set with the ability to leverage company assets such as expertise, channels, brand, market and customer base.to innovate.  To enable innovators to succeed, you’ll need to measure and recognize their innovative efforts. Three metrics play special roles. The first are leading indicators such as the percentage of employees and the size & strength of the internal collaborative ecosystem. The second type of metric measures the process. How many meaningful ideas are in your pipeline? Is your portfolio balanced and robust? Are you commercializing your ideas? Thirdly there are lagging indicators, the metrics focus on the revenues from new products, the impact on profit, and the effect of innovation on brand.

5.) Rewards & Recognition : You need to give public recognition to innovators. Bonuses are great, but they’re private — no one in the organization sees the check. However, when you promote someone based on their contribution to and collaboration on successful innovations, it sets a good example and motives coworkers. Public recognition displays management’s commitment to the people who demonstrate truly innovative behavior. All innovation efforts do not succeed  & in order to drive towards innovative thinking, failure has to be an option. Understanding that the lessons that you learn from failure leads to success is the key to any learning organization.Support of these failures is critical to their ultimate success. Leadership should recognize innovators instead of spending time looking for who was at fault and focus on the leanings from the failure and how to overcome it. How can you avoid it in the future and strive for better results? 
Finally, the hardest part of any innovation culture is to simply Pull Back & stop work on an innovation idea. When innovations are not panning out, not delivering the results expected, or driving to the capability you thought, you need to stop the work and simply move on. This is much harder for people and organizations to do as any innovation begins with a passionate individual or group that truly invests in the direction. While very difficult, it is a critical step in managing those critical resources you have directed towards innovation. An organization that has clear vision for innovation, a well thought innovation strategy and  road-map, encourages collaboration will succeed in building an innovation culture that realizes its innovation goals.

Understanding Generative AI and Generative AI Platform leaders

We are hearing a lot about power of Generative AI. Generative AI is a vertical of AI that  holds the power to #Create content, artwork, code...