<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Hamidreza</title>
    <description>The latest articles on DEV Community by Hamidreza (@hr_coder).</description>
    <link>https://dev.to/hr_coder</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F420094%2F426ab7c6-ab09-419d-bfb6-8c2a690963d1.jpg</url>
      <title>DEV Community: Hamidreza</title>
      <link>https://dev.to/hr_coder</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/hr_coder"/>
    <language>en</language>
    <item>
      <title>Native vs React-Native vs Flutter : Quality Assessment</title>
      <dc:creator>Hamidreza</dc:creator>
      <pubDate>Thu, 02 Jul 2020 21:51:19 +0000</pubDate>
      <link>https://dev.to/hr_coder/native-vs-react-native-vs-flutter-quality-assessment-3c5p</link>
      <guid>https://dev.to/hr_coder/native-vs-react-native-vs-flutter-quality-assessment-3c5p</guid>
      <description>&lt;p&gt;Today some of the most popular solutions to build mobile apps are native or cross-platform approaches using React Native or Flutter. While native development is positioned as AAA technical solution, it has some disadvantages that create market space for cross-platform apps to come in. In general, native development requires more effort from the development team to accomplish the project but it gives full control over tricky technical stuff under the hood. On the other hand, if you choose cross-platform, it can significantly speed up the development process due to a common code base, make project support easier and reduce expenses for development.&lt;/p&gt;

&lt;p&gt;One more advantage of native over cross-platform development is performance. In the technical world, you can encounter “cross-platform apps are slow” stereotypes. We decided to test if it’s true and to what extend cross-platform apps are slower than native.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;There are different types of performance, some of them are:&lt;/strong&gt;
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Interacting with phone API (accessing photos, file system, getting GPS location and so on).&lt;/li&gt;
&lt;li&gt;Rendering speed (animation smoothness, frames per second while UI is changed or some UI effects that take place in time).&lt;/li&gt;
&lt;li&gt;Business logic (the speed of mathematical calculations and memory manipulations. This type of performance is most important for the apps with complex business logic).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In this article, we share the results of performance tests showing mathematical calculations of number Pi implemented in native and cross-platform approaches.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;em&gt;CPU-intensive test (Gauss–Legendre algorithm) for iOS&lt;/em&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--hj5V8T_C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/fqwa68dtqfo0jskan69b.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--hj5V8T_C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/fqwa68dtqfo0jskan69b.jpeg" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
Memory-intensive test (Gauss–Legendre algorithm) for iOS&lt;/p&gt;

&lt;p&gt;iOS&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Objective-C is the best programming language for iOS development. Swift is 1.7 times slower compared to Objective C.&lt;/li&gt;
&lt;li&gt;Surprise: Flutter is a bit faster than Swift (on 15%).&lt;/li&gt;
&lt;li&gt;React Native is 20 times slower than Objective C.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;em&gt;CPU-intensive test (Borwein algorithm) for iOS&lt;/em&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iiQ4GkEl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/ojmpaxv10w0qoyhuvihc.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iiQ4GkEl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/ojmpaxv10w0qoyhuvihc.jpeg" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
CPU-intensive test (Borwein algorithm) for iOS&lt;/p&gt;

&lt;p&gt;iOS&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Objective C is the best option for iOS app development. Swift is 1.9 times slower compared to Objective-C.&lt;/li&gt;
&lt;li&gt;Flutter is 5 times slower than Swift.&lt;/li&gt;
&lt;li&gt;React Native version is more than 15 times slower than the Swift version.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;em&gt;CPU-intensive test (Gauss–Legendre algorithm) for Android&lt;/em&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PjA0uMr0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/xpt34czphad72i8ey11a.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PjA0uMr0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/xpt34czphad72i8ey11a.jpeg" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
Memory-intensive test (Gauss–Legendre algorithm) for Android&lt;/p&gt;

&lt;p&gt;Android&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Java and Kotlin have similar performance indications and are the best options for Android development.&lt;/li&gt;
&lt;li&gt;Flutter is approximately 20% slower than native.&lt;/li&gt;
&lt;li&gt;React Native is around 15 times slower than native.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;em&gt;CPU-intensive test (Borwein algorithm) for Android&lt;/em&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--t6IgI-Ld--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/i5o82svdkm9gf78dyf44.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--t6IgI-Ld--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/i5o82svdkm9gf78dyf44.jpeg" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
CPU-intensive test (Borwein algorithm) for Android&lt;/p&gt;

&lt;p&gt;Android&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Java and Kotlin have similar performance indications and are the best options for Android development.&lt;/li&gt;
&lt;li&gt;Native is 2 times faster then Flutter.&lt;/li&gt;
&lt;li&gt;React native is around 6 times slower than native.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Technical details:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;All tests have been done on real physical devices (iPhone 6s IOS 13.2.3 and Xiaomi Redmi Note 5 running under Android 9.0);&lt;/li&gt;
&lt;li&gt;We measured performance on release builds. In some cases, debug builds can be significantly slower than the release builds.&lt;/li&gt;
&lt;li&gt;All tests were run several times and the average result was calculated.&lt;/li&gt;
&lt;li&gt;Gauss–Legendre &amp;amp; Borwein algorithms of calculating Pi numbers were used. The Pi number has been calculated 100 times with 10 million digits precision.&lt;/li&gt;
&lt;li&gt;Gauss–Legendre is a more memory-intensive algorithm in comparison with Borwein, but Borwein is more CPU-intensive.&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Applications of artificial intelligence in banking
</title>
      <dc:creator>Hamidreza</dc:creator>
      <pubDate>Tue, 30 Jun 2020 06:40:06 +0000</pubDate>
      <link>https://dev.to/hr_coder/applications-of-artificial-intelligence-in-banking-3me</link>
      <guid>https://dev.to/hr_coder/applications-of-artificial-intelligence-in-banking-3me</guid>
      <description>&lt;p&gt;Artificial Intelligence Application in Banking&lt;br&gt;
Artificial Intelligence is a kid who is pursuing now to its teenage. Every field (whether it is marketing, manufacturing, health or BPO, etc.) is accepting Artificial Intelligence. The banking sector is a field which is welcoming Artificial Intelligence with open hands. AI in Banking is a joint process powered by chatbots (which are already evolving day by day)and other automation technology, and for giving life to these techniques, machine learning and deep learning plays a vital role. According to the report “Accenture Banking Technology Vision – 2018”, 83 % of bankers of India have faith that Artificial Intelligence will be their companion in work in the next two years. So this matter of banking sector using Artificial Intelligence will provide the answers to the following questions –&lt;/p&gt;

&lt;p&gt;What are examples of AI applications that are being used by employees and customers at banks already?&lt;br&gt;
What will be the advantages of these applications in terms of time efficiency, cost efficiency and efforts?&lt;br&gt;
What is the scope of AI in the future in regards to the banking sector?&lt;br&gt;
Example of a Framework – Banking with AI-powered by AutoML&lt;br&gt;
How can AI be a part of the Banking Sector? What is the correct place to put the different applications? These are some questions which itself come to the mind when two terms banking sector and AI are put together. Below is a framework which can be considered as an example of the collaboration of AI and Banking Sector, handling different services of banking using the separate application of Artificial Intelligence.&lt;/p&gt;

&lt;p&gt;Some of the components in the diagram seems to be unknown or unseen, their context has been introduced briefly in the applications sector, but one term AutoML appears to be new. The services of banking sector demand automation as there is a requirement of handling different functions at once for a large number of customers with good accuracy and precision. For serving that purpose, using AutoML instead of ordinary ML can be a good option. Let’s tackle AutoML briefly.&lt;/p&gt;

&lt;p&gt;Automated Machine Learning (aka AutoML) is a way of pursuing Machine Learning in which methods and processes of Machine Learning can also be used by the persons who do not know about Machine Learning. The tasks which could be handled by AutoML are –&lt;/p&gt;

&lt;p&gt;Preprocessing the data.&lt;br&gt;
Feature selection and Features Generation.&lt;br&gt;
Model building and selection.&lt;br&gt;
Optimization of the model hyperparameters.&lt;br&gt;
Post Processing of the models.&lt;br&gt;
Analyzing the results.&lt;br&gt;
Tools which can be used for AutoML are AutoWEKA, Auto-sklearn, H2O AutoML, MLBox, etc.&lt;/p&gt;

&lt;p&gt;Application of Artificial Intelligence in Banking&lt;br&gt;
For Artificial Intelligence, banking is like an ocean of opportunity. Some of these applications are briefly described below. For the ease of understanding, these applications are divided into their subcategories. These applications and subcategories are –&lt;/p&gt;

&lt;p&gt;Business Process Management at Back-End&lt;br&gt;
Human Resource related services – Artificial Intelligence can be used for handling primary stage tasks related to hiring such as engaging with recruits, initial stage filtering using social media analytics, pre-screening the candidates over chat risk Analysis.&lt;/p&gt;

&lt;p&gt;R&amp;amp;D of Investment related services – There are so many repetitive back-end tasks. Using software robots for handling such tasks can be a good option which can not only save time, but this idea can provide excellent efficiency and accuracy.&lt;/p&gt;

&lt;p&gt;Algorithmic Trading – There are so many algorithmic solutions which are used for handling high-frequency trading where data is imported from various financial markets and based on this data several investment decisions are made in milliseconds.&lt;/p&gt;

&lt;p&gt;Robotic Process Automation – Cognitive computing is the future of Robotic Process Automation.&lt;/p&gt;

&lt;p&gt;Insurance Under-Writing – Using Artificial Intelligence for handling Insurance-related tasks such as risk assessment accuracy measures and predicting the premium to be paid by a customer.&lt;/p&gt;

&lt;p&gt;Privacy, Security and Compliance&lt;br&gt;
Scam &amp;amp; Fraud Detection and their prevention – Using machine learning (a subset of AI) scam and fraud detection is very much comfortable now unlike the measures used in the past.&lt;/p&gt;

&lt;p&gt;Compliance Monitoring – The use of AI reduces the time taken to examine the lengthy documents and marking the potential issues, and now it is possible in seconds as compared to hours previously.&lt;/p&gt;

&lt;p&gt;CRM, Marketing and Customer Support&lt;br&gt;
Chatbots or Voicebots Services – Chatbots and voice bots are famous now, and more advanced version of chatbots are coming now known as Co-bots (chatbots with cognitive capabilities ).&lt;/p&gt;

&lt;p&gt;Smart Wallets – E-wallets with quick and intelligence capability such as using fingerprint scanning for security purpose which made easy as well as secure.&lt;/p&gt;

&lt;p&gt;Personalized Financial Services – Bots with Intelligence capability are also used for managing customer targets. Such as recommending stocks or bonds.&lt;/p&gt;

&lt;p&gt;Robotic Process for Handling Financial Products – Financial Products can be handled using robots with zero human intervention.&lt;/p&gt;

&lt;p&gt;Artificial Intelligence in Indian Banks&lt;br&gt;
India is on the track of becoming a global hub of technology. The Banking sector of India is also adopting Artificial Intelligence and its techniques. Let’s consider some examples of the same –&lt;/p&gt;

&lt;p&gt;State Bank of India (SBI) has already built a solution based on Artificial Intelligence, which is developed by a team (winner of the first hackathon arranged by SBI). From the words of Sudin Baraokar, SBI’s innovation head – “The solution essentially scans cameras installed in the branch and captures the facial expressions of the customers and immediately reports whether the customer is happy or sad – this is real-time or near real-time feedback.”&lt;/p&gt;

&lt;p&gt;Senseforth AI Research for HDFC Bank has developed a chatbot based on AI “Eva.” The full form of Eva is Electronic Virtual Assistant. According to HDFC, Eva has already addressed 2.7 million plus queries come from 530 k users.&lt;/p&gt;

&lt;p&gt;In the quest of launching AI-based chatbot, ICICI bank is not lacking behind in any manner. The chatbot which is launched by ICICI bank in February already answered about 6 million queries and maintaining a reasonable accuracy rate of 90 percent. This chatbot is known as iPal.&lt;/p&gt;

&lt;p&gt;Not only Indian Bank, but international financial institutes such JPMorgan Chase and Wells Fargo also investing some of their budgets in AI. In 2017, JPMorgan invested 3 billion USD in new initiatives, such as AI.&lt;/p&gt;

&lt;p&gt;Best Practices for Enabling AI in Banking&lt;br&gt;
Understanding the specific problem by identifying the particular Business needs – It is necessary to know what the business needs. First, Artificial intelligence can provide different solutions for the same problem, but it is essential to see the disease before prescribing any medicine.&lt;/p&gt;

&lt;p&gt;Develop a Management Strategy for handling Data – Banking is a field where there is no scarcity of data. In fact, in banking how to process an enormous amount of data is a problem. So it is better to maintain management planning to clean, extract and centralize the data after that data should be structured into a form which is understandable by AI.&lt;/p&gt;

&lt;p&gt;Giving the time to AI for self-learning – Learning is the most critical aspect of any AI technology. AI is a technology which requires a lot of learning to deliver a good result; it is not a software program which will provide excellent results as soon as it is deployed. It has a requirement to be fed on historical data and to train itself. This can be time-consuming.&lt;/p&gt;

&lt;p&gt;Automating the testing continuously – Having correct results in the development phase by AI does not ensure that it will give accurate results in production also. It can provide undesired effects on the actual data. That is why it is essential to set up a mechanism of continuous testing for an AI.&lt;/p&gt;

&lt;p&gt;Maintain the correct mathematical spirits of the solution – The solution provided by an AI should be mathematically as well as practically right.&lt;/p&gt;

&lt;p&gt;Challenges for Enabling AI in Banking&lt;br&gt;
The main challenge for the development of an AI solution is the availability of the right kind of data. Data acts as fuel for the machinery of AI. Though in the field of Banking the availability of data is sufficient in most of the cases still it appears to be a challenge for applying AI in the banking sector.&lt;/p&gt;

&lt;p&gt;The next challenge comes after the availability of data is its privacy and security. In the technological world of Banking, the security of data demands as much concern as the security of any treasure needs. Artificial Intelligence implementation requires privacy policy like GDPR (General Data Protection Regulation), which is introduced by Europe for its citizens.&lt;/p&gt;

&lt;p&gt;The next big challenge is the lack of human resources. It is already stated above that AI now is in the teenage stage but AI still lacks in the capable hands which can handle the core technologies in right and efficient manner.&lt;/p&gt;

&lt;p&gt;The threat to the employment generated by the use of Artificial Intelligence is another challenge. Though AI opened the door for new job opportunities such as Data Science and Data Engineering, on the other hand, it is also true that the adaptation of AI may also cause an unemployment problem in the sector.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
