<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3322146266378349147</id><updated>2025-12-15T18:31:56.074-08:00</updated><category term="IT News"/><category term="Information Security"/><category term="Tips and Trick"/><category term="Software Development"/><category term="Software Security"/><category term="Conference"/><category term="Web-based application"/><category term="Community Group"/><category term="Programming"/><category term="Hackers"/><category term="Personal Opinion"/><category term="Open Source"/><category term="Vulnerability"/><category term="Newsletter"/><category term="Malware"/><category term="Security Forum/Conference"/><category term="Buffer Overflow"/><category term="Java"/><category term="Critics"/><category term="Talk/Lecture"/><category term="C Programs"/><category term="Code Project"/><category term="Sample Code"/><category term="Mobile Apps"/><category term="Static Analysis"/><category term="White Paper"/><category term="Flex"/><category term="Microsoft"/><category term="Social"/><category term="Big Data"/><category term="Data Sciences"/><category term="Embedded"/><category term="Ionic Framework"/><category term="AI"/><category term="Forum"/><category term="Mobile World"/><category term="Privacy and Trust"/><category term="Publications"/><category term="Technology"/><category term="Tool"/><category term="Codility"/><category term="Comparison"/><category term="Cryptography and Encryption"/><category term="Data Analytics"/><category term="ionic"/><category term="Database"/><category term="Javascript"/><category term="Program Analysis"/><category term="Data Analysis"/><category term="Education"/><category term="IP"/><category term="PHP"/><category term="Training"/><category term="Free/OSS"/><category term="Project Management"/><category term="AI Ethics"/><category term="Analytics"/><category term="Artificial Intelligence"/><category term="Artificial Intelligent"/><category term="IT Jokes"/><category term="Journal"/><category term="Linux"/><category term="Mobile Development"/><category term="Network"/><category term="Patch and Update"/><category term="React"/><category term="Tableau"/><category term="2025"/><category term="AI Governance and Ethics"/><category term="Competition"/><category term="Data Integration"/><category term="Market Research"/><category term="Review/Preview"/><category term="Scripting Language"/><category term="System"/><category term="API"/><category term="Algorithm"/><category term="Apple"/><category term="Audit"/><category term="Data"/><category term="Data Visualization"/><category term="Emerging Technologies"/><category term="Flutter"/><category term="Generative AI"/><category term="Google"/><category term="IT Gadget"/><category term="Kaggle"/><category term="Mac"/><category term="Machine Learning"/><category term="R Studio"/><category term="Silverlight"/><category term="AGI"/><category term="Android"/><category term="Angular"/><category term="Application Development"/><category term="Architecture"/><category term="Assessment"/><category term="Binary"/><category term="Blockchain"/><category term="Certification"/><category term="Content Writer"/><category term="Dart"/><category term="Design"/><category term="Digital Transformation"/><category term="ETL"/><category term="Engineering"/><category term="Enterprise Architect"/><category term="Formal Methods"/><category term="Framework"/><category term="GIS"/><category term="GitHub"/><category term="Google Play"/><category term="Homestead"/><category term="IR4.0"/><category term="IoT"/><category term="JDK"/><category term="Jenv"/><category term="Kecerdasan Buatan"/><category term="Kepintaran Buatan"/><category term="Knowledge Sharing"/><category term="LLM"/><category term="Laravel"/><category term="Leadership"/><category term="Management"/><category term="Melayu"/><category term="MySQL"/><category term="Notebook"/><category term="OpenAI"/><category term="PWA"/><category term="Pentaho"/><category term="Prediction"/><category term="Qualitative Review"/><category term="Quantum"/><category term="Quiz/Test"/><category term="R language"/><category term="REST"/><category term="Robot"/><category term="Robotics"/><category term="SLM"/><category term="SQL Injection"/><category term="Sciences"/><category term="Smart Manufacturing"/><category term="Solution Architect"/><category term="Symposium"/><category term="System Validation"/><category term="System Verifications"/><category term="Systems Architect"/><category term="Thought Leaders"/><category term="Typescript"/><category term="Visualization"/><category term="Web Browser"/><category term="Windows&#xa;Windows 11&#xa;Microsoft&#xa;Experience&#xa;Technology"/><category term="ebook"/><title type='text'>Malaysian Developer</title><subtitle type='html'>My experience on my daily works... helping others ease each other</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>416</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-7484025926017127520</id><published>2025-04-19T08:05:00.000-07:00</published><updated>2025-04-19T08:05:23.592-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="2025"/><category scheme="http://www.blogger.com/atom/ns#" term="AI"/><category scheme="http://www.blogger.com/atom/ns#" term="Artificial Intelligence"/><category scheme="http://www.blogger.com/atom/ns#" term="Code Project"/><category scheme="http://www.blogger.com/atom/ns#" term="Generative AI"/><category scheme="http://www.blogger.com/atom/ns#" term="Google"/><category scheme="http://www.blogger.com/atom/ns#" term="Kaggle"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><category scheme="http://www.blogger.com/atom/ns#" term="Sample Code"/><title type='text'>Google Gen AI 5-days Intensive Course - Capstone Project - AI Food Agent by Haszeli</title><content type='html'>&lt;h1 style=&quot;text-align: left;&quot;&gt;🍽️ NakMakanApa – A Generative AI Companion for Personalized Meal Discovery&lt;/h1&gt;
&lt;h2 class=&quot;&quot; data-end=&quot;260&quot; data-start=&quot;242&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEgV9P8lkgR1fKJ2P9cF0KdkEZm08QK3CkEoM8jQxgLS_wUvRCUzjhaKFuLd3fCQGd2eZkiUOciDY_L1kqK8okHAqyRYVx9mDBcuhje0SnykNEhLUnJvzauYkHJwUDYL58QT_S9F-dXqM14fNNbtHRPtzAx1R4-FWfcVucTbLPn4lMpekusGIXEU-W7xEInA&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1792&quot; height=&quot;366&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEgV9P8lkgR1fKJ2P9cF0KdkEZm08QK3CkEoM8jQxgLS_wUvRCUzjhaKFuLd3fCQGd2eZkiUOciDY_L1kqK8okHAqyRYVx9mDBcuhje0SnykNEhLUnJvzauYkHJwUDYL58QT_S9F-dXqM14fNNbtHRPtzAx1R4-FWfcVucTbLPn4lMpekusGIXEU-W7xEInA=w640-h366&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/h2&gt;&lt;h2 class=&quot;&quot; data-end=&quot;260&quot; data-start=&quot;242&quot;&gt;🧠 Introduction&lt;/h2&gt;
&lt;p class=&quot;&quot; data-end=&quot;535&quot; data-start=&quot;262&quot;&gt;Every Malaysian has faced the timeless question: &lt;strong data-end=&quot;331&quot; data-start=&quot;311&quot;&gt;“Nak makan apa?”&lt;/strong&gt; (&quot;What do I want to eat?&quot;). Whether you&#39;re a busy parent, a health-conscious professional, or someone simply staring at a fridge of random ingredients, deciding what to eat can be surprisingly stressful.&lt;/p&gt;
&lt;p class=&quot;&quot; data-end=&quot;918&quot; data-start=&quot;537&quot;&gt;&lt;strong data-end=&quot;552&quot; data-start=&quot;537&quot;&gt;NakMakanApa&lt;/strong&gt; is a Generative AI-powered food recommendation system that turns that daily dilemma into an intelligent, personalized experience. Built as part of the &lt;strong data-end=&quot;747&quot; data-start=&quot;704&quot;&gt;GenAI Intensive Course Capstone Project&lt;/strong&gt;, this solution blends natural language understanding, image recognition, and AI-driven reasoning to guide users toward delicious, healthy, and culturally relevant meals.&lt;/p&gt;&lt;p class=&quot;&quot; data-end=&quot;918&quot; data-start=&quot;537&quot;&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEj10iPorEjyyxvIUAk63SsrdoicV7gSLCZcsUbIVe3DK-jNXmahkpDVSNUgYSYBi4I7k4R7O0yY6d69a7oBTDbqDTOehsghAZz-oRUtHhWS1OenW1Mo2ZAsgSpQ2k-SP827Pe-_fmR6geDhM2b7DHDeg0Ezrl7Z8SyMBg-ww8DomAeG2G8F03XCr_7WSJtk&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEj10iPorEjyyxvIUAk63SsrdoicV7gSLCZcsUbIVe3DK-jNXmahkpDVSNUgYSYBi4I7k4R7O0yY6d69a7oBTDbqDTOehsghAZz-oRUtHhWS1OenW1Mo2ZAsgSpQ2k-SP827Pe-_fmR6geDhM2b7DHDeg0Ezrl7Z8SyMBg-ww8DomAeG2G8F03XCr_7WSJtk=w400-h400&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;h2 class=&quot;&quot; data-end=&quot;962&quot; data-start=&quot;925&quot;&gt;🌟 What Makes NakMakanApa Special?&lt;/h2&gt;&lt;p class=&quot;&quot; data-end=&quot;1052&quot; data-start=&quot;964&quot;&gt;This isn’t just a recipe finder. NakMakanApa is a full-featured AI &lt;strong data-end=&quot;1040&quot; data-start=&quot;1031&quot;&gt;agent&lt;/strong&gt; capable of:&lt;/p&gt;&lt;ul data-end=&quot;1588&quot; data-start=&quot;1054&quot;&gt;
&lt;li class=&quot;&quot; data-end=&quot;1187&quot; data-start=&quot;1054&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;1187&quot; data-start=&quot;1056&quot;&gt;🗣️ &lt;strong data-end=&quot;1090&quot; data-start=&quot;1060&quot;&gt;Understanding user prompts&lt;/strong&gt; like “saya nak makanan pedas dan sihat untuk jantung” (I want something spicy and heart-healthy)&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;1267&quot; data-start=&quot;1188&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;1267&quot; data-start=&quot;1190&quot;&gt;🖼️ &lt;strong data-end=&quot;1217&quot; data-start=&quot;1194&quot;&gt;Interpreting images&lt;/strong&gt; of fridge contents to identify usable ingredients&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;1361&quot; data-start=&quot;1268&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;1361&quot; data-start=&quot;1270&quot;&gt;🧠 &lt;strong data-end=&quot;1307&quot; data-start=&quot;1273&quot;&gt;Personalizing meal suggestions&lt;/strong&gt; based on preferences, health goals, and local cuisine&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;1442&quot; data-start=&quot;1362&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;1442&quot; data-start=&quot;1364&quot;&gt;📦 &lt;strong data-end=&quot;1387&quot; data-start=&quot;1367&quot;&gt;Fetching recipes&lt;/strong&gt; via vector search and fallback to Gemini LLM if needed&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;1527&quot; data-start=&quot;1443&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;1527&quot; data-start=&quot;1445&quot;&gt;🧾 &lt;strong data-end=&quot;1494&quot; data-start=&quot;1448&quot;&gt;Generating structured summaries and advice&lt;/strong&gt; about the meal’s health benefits&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;1588&quot; data-start=&quot;1528&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;1588&quot; data-start=&quot;1530&quot;&gt;📄 &lt;strong data-end=&quot;1588&quot; data-start=&quot;1533&quot;&gt;Exporting everything as a clean PDF or TXT document&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;hr class=&quot;&quot; data-end=&quot;1593&quot; data-start=&quot;1590&quot; /&gt;&lt;h2 class=&quot;&quot; data-end=&quot;1627&quot; data-start=&quot;1595&quot;&gt;🔧 How It Works – The Process&lt;/h2&gt;&lt;p class=&quot;&quot; data-end=&quot;1666&quot; data-start=&quot;1629&quot;&gt;The project unfolds in 8 major steps:&lt;/p&gt;&lt;ol data-end=&quot;2365&quot; data-start=&quot;1668&quot;&gt;
&lt;li class=&quot;&quot; data-end=&quot;1742&quot; data-start=&quot;1668&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;1742&quot; data-start=&quot;1671&quot;&gt;&lt;strong data-end=&quot;1710&quot; data-start=&quot;1671&quot;&gt;Prepare a structured recipe dataset&lt;/strong&gt; as a DataFrame (&lt;code data-end=&quot;1739&quot; data-start=&quot;1727&quot;&gt;df_recipes&lt;/code&gt;)&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;1835&quot; data-start=&quot;1743&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;1835&quot; data-start=&quot;1746&quot;&gt;&lt;strong data-end=&quot;1771&quot; data-start=&quot;1746&quot;&gt;Install and configure&lt;/strong&gt; required libraries (LangChain, FAISS, Gemini SDK, YOLOv8, etc.)&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;1907&quot; data-start=&quot;1836&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;1907&quot; data-start=&quot;1839&quot;&gt;&lt;strong data-end=&quot;1860&quot; data-start=&quot;1839&quot;&gt;Allow image input&lt;/strong&gt; – users can upload a fridge/ingredient photo&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;2007&quot; data-start=&quot;1908&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;2007&quot; data-start=&quot;1911&quot;&gt;&lt;strong data-end=&quot;1933&quot; data-start=&quot;1911&quot;&gt;Detect ingredients&lt;/strong&gt; via YOLOv8 and match them with user preferences (multilingual supported!)&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;2072&quot; data-start=&quot;2008&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;2072&quot; data-start=&quot;2011&quot;&gt;&lt;strong data-end=&quot;2046&quot; data-start=&quot;2011&quot;&gt;Search local FAISS vector index&lt;/strong&gt; for best recipe matches&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;2165&quot; data-start=&quot;2073&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;2165&quot; data-start=&quot;2076&quot;&gt;&lt;strong data-end=&quot;2098&quot; data-start=&quot;2076&quot;&gt;Fallback to Gemini&lt;/strong&gt; if no good match is found, auto-updating the dataset &amp;amp; vector DB&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;2271&quot; data-start=&quot;2166&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;2271&quot; data-start=&quot;2169&quot;&gt;&lt;strong data-end=&quot;2217&quot; data-start=&quot;2169&quot;&gt;Summarize recipe &amp;amp; highlight health benefits&lt;/strong&gt;, giving users a clear reason for the recommendation&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;2365&quot; data-start=&quot;2272&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;2365&quot; data-start=&quot;2275&quot;&gt;&lt;strong data-end=&quot;2305&quot; data-start=&quot;2275&quot;&gt;Generate PDF or TXT output&lt;/strong&gt;, with beautiful formatting, for sharing or saving offline&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjLwyiny8UeieyIkQS_RPZv_bCRNeK6_UhbNNwSLyi2VgRyWD6cpJiSQc34kXfWrONX_KFwGLjs64DeahkT9W8-VqcBgRURKkxW5BI4G8mjCmlpLztOpun406GC1-OAqc1XWJX9d2Pu-T84kJp6Xkl3lhG9HSw8cEGFGZeYTfIslABoRmCv_EU9IblU9mzy&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;1856&quot; data-original-width=&quot;3576&quot; height=&quot;332&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjLwyiny8UeieyIkQS_RPZv_bCRNeK6_UhbNNwSLyi2VgRyWD6cpJiSQc34kXfWrONX_KFwGLjs64DeahkT9W8-VqcBgRURKkxW5BI4G8mjCmlpLztOpun406GC1-OAqc1XWJX9d2Pu-T84kJp6Xkl3lhG9HSw8cEGFGZeYTfIslABoRmCv_EU9IblU9mzy=w640-h332&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;Example of the screen on kaggle&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr class=&quot;&quot; data-end=&quot;2370&quot; data-start=&quot;2367&quot; /&gt;&lt;h2 class=&quot;&quot; data-end=&quot;2404&quot; data-start=&quot;2372&quot;&gt;💡 GenAI Capabilities Applied&lt;/h2&gt;&lt;div class=&quot;group pointer-events-none relative flex justify-center *:pointer-events-auto&quot;&gt;&lt;span class=&quot;pointer-events-none absolute start-full top-4 z-10 hidden h-full w-fit ps-2 md:block&quot; data-state=&quot;closed&quot;&gt;&lt;button class=&quot;hover:bg-token-main-surface-secondary text-token-text-secondary pointer-events-auto rounded-lg px-1 py-1 opacity-0 transition-opacity duration-200 group-focus-within:opacity-100 group-hover:opacity-100&quot;&gt;&lt;svg class=&quot;icon-md-heavy&quot; fill=&quot;none&quot; height=&quot;24&quot; viewbox=&quot;0 0 24 24&quot; width=&quot;24&quot; xmlns=&quot;http://www.w3.org/2000/svg&quot;&gt;&lt;path clip-rule=&quot;evenodd&quot; d=&quot;M7 5C7 3.34315 8.34315 2 10 2H19C20.6569 2 22 3.34315 22 5V14C22 15.6569 20.6569 17 19 17H17V19C17 20.6569 15.6569 22 14 22H5C3.34315 22 2 20.6569 2 19V10C2 8.34315 3.34315 7 5 7H7V5ZM9 7H14C15.6569 7 17 8.34315 17 10V15H19C19.5523 15 20 14.5523 20 14V5C20 4.44772 19.5523 4 19 4H10C9.44772 4 9 4.44772 9 5V7ZM5 9C4.44772 9 4 9.44772 4 10V19C4 19.5523 4.44772 20 5 20H14C14.5523 20 15 19.5523 15 19V10C15 9.44772 14.5523 9 14 9H5Z&quot; fill-rule=&quot;evenodd&quot; fill=&quot;currentColor&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/button&gt;&lt;/span&gt;&lt;div class=&quot;tableContainer horzScrollShadows relative&quot;&gt;&lt;table class=&quot;min-w-full&quot; data-end=&quot;2974&quot; data-start=&quot;2406&quot;&gt;&lt;thead data-end=&quot;2434&quot; data-start=&quot;2406&quot;&gt;&lt;tr data-end=&quot;2434&quot; data-start=&quot;2406&quot;&gt;&lt;th data-end=&quot;2419&quot; data-start=&quot;2406&quot;&gt;Capability&lt;/th&gt;&lt;th data-end=&quot;2434&quot; data-start=&quot;2419&quot;&gt;Application&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody data-end=&quot;2974&quot; data-start=&quot;2464&quot;&gt;&lt;tr data-end=&quot;2575&quot; data-start=&quot;2464&quot;&gt;&lt;td class=&quot;max-w-[calc(var(--thread-content-max-width)*2/3)]&quot; data-end=&quot;2503&quot; data-start=&quot;2464&quot;&gt;&lt;strong data-end=&quot;2502&quot; data-start=&quot;2466&quot;&gt;📊 Structured Output / JSON Mode&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;max-w-[calc(var(--thread-content-max-width)*2/3)] min-w-[calc(var(--thread-content-max-width)/3)]&quot; data-end=&quot;2575&quot; data-start=&quot;2503&quot;&gt;Recipes returned in structured JSON: title, ingredients, steps, tags&lt;/td&gt;&lt;/tr&gt;&lt;tr data-end=&quot;2647&quot; data-start=&quot;2576&quot;&gt;&lt;td class=&quot;max-w-[calc(var(--thread-content-max-width)*2/3)]&quot; data-end=&quot;2605&quot; data-start=&quot;2576&quot;&gt;&lt;strong data-end=&quot;2604&quot; data-start=&quot;2578&quot;&gt;🧠 Image Understanding&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;max-w-[calc(var(--thread-content-max-width)*2/3)]&quot; data-end=&quot;2647&quot; data-start=&quot;2605&quot;&gt;YOLOv8 used to detect food from photos&lt;/td&gt;&lt;/tr&gt;&lt;tr data-end=&quot;2747&quot; data-start=&quot;2648&quot;&gt;&lt;td class=&quot;max-w-[calc(var(--thread-content-max-width)*2/3)]&quot; data-end=&quot;2694&quot; data-start=&quot;2648&quot;&gt;&lt;strong data-end=&quot;2693&quot; data-start=&quot;2650&quot;&gt;📚 Retrieval-Augmented Generation (RAG)&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;max-w-[calc(var(--thread-content-max-width)*2/3)] min-w-[calc(var(--thread-content-max-width)/3)]&quot; data-end=&quot;2747&quot; data-start=&quot;2694&quot;&gt;Blend of FAISS vector search with Gemini fallback&lt;/td&gt;&lt;/tr&gt;&lt;tr data-end=&quot;2838&quot; data-start=&quot;2748&quot;&gt;&lt;td class=&quot;max-w-[calc(var(--thread-content-max-width)*2/3)]&quot; data-end=&quot;2770&quot; data-start=&quot;2748&quot;&gt;&lt;strong data-end=&quot;2769&quot; data-start=&quot;2750&quot;&gt;🔍 Vector Store&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;max-w-[calc(var(--thread-content-max-width)*2/3)] min-w-[calc(var(--thread-content-max-width)/3)]&quot; data-end=&quot;2838&quot; data-start=&quot;2770&quot;&gt;Efficient similarity search on recipes using semantic embeddings&lt;/td&gt;&lt;/tr&gt;&lt;tr data-end=&quot;2974&quot; data-start=&quot;2839&quot;&gt;&lt;td class=&quot;max-w-[calc(var(--thread-content-max-width)*2/3)]&quot; data-end=&quot;2865&quot; data-start=&quot;2839&quot;&gt;&lt;strong data-end=&quot;2854&quot; data-start=&quot;2841&quot;&gt;🤖 Agents&lt;/strong&gt; &lt;em data-end=&quot;2864&quot; data-start=&quot;2855&quot;&gt;(Bonus)&lt;/em&gt;&lt;/td&gt;&lt;td class=&quot;max-w-[calc(var(--thread-content-max-width)*2/3)] min-w-[calc(var(--thread-content-max-width)/2)]&quot; data-end=&quot;2974&quot; data-start=&quot;2865&quot;&gt;The system behaves like an AI agent orchestrating input parsing, generation, and summarization seamlessly&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr class=&quot;&quot; data-end=&quot;2979&quot; data-start=&quot;2976&quot; /&gt;&lt;h2 class=&quot;&quot; data-end=&quot;3009&quot; data-start=&quot;2981&quot;&gt;🧪 Results &amp;amp; Achievements&lt;/h2&gt;&lt;p class=&quot;&quot; data-end=&quot;3384&quot; data-start=&quot;3011&quot;&gt;✅ Users can receive &lt;strong data-end=&quot;3064&quot; data-start=&quot;3031&quot;&gt;personalized meal suggestions&lt;/strong&gt; from both text and image input&lt;br data-end=&quot;3098&quot; data-start=&quot;3095&quot; /&gt;
✅ Recipes include &lt;strong data-end=&quot;3149&quot; data-start=&quot;3116&quot;&gt;clear, AI-generated summaries&lt;/strong&gt; explaining their health value&lt;br data-end=&quot;3182&quot; data-start=&quot;3179&quot; /&gt;
✅ The system handles &lt;strong data-end=&quot;3232&quot; data-start=&quot;3203&quot;&gt;English and Malay prompts&lt;/strong&gt; with ease&lt;br data-end=&quot;3245&quot; data-start=&quot;3242&quot; /&gt;
✅ Users can &lt;strong data-end=&quot;3282&quot; data-start=&quot;3257&quot;&gt;export results to PDF&lt;/strong&gt;, making meal planning effortless&lt;br data-end=&quot;3318&quot; data-start=&quot;3315&quot; /&gt;
✅ Every process includes &lt;strong data-end=&quot;3368&quot; data-start=&quot;3343&quot;&gt;robust error handling&lt;/strong&gt; for reliability&lt;/p&gt;&lt;hr class=&quot;&quot; data-end=&quot;3389&quot; data-start=&quot;3386&quot; /&gt;&lt;h2 class=&quot;&quot; data-end=&quot;3409&quot; data-start=&quot;3391&quot;&gt;🚀 What’s Next?&lt;/h2&gt;&lt;p class=&quot;&quot; data-end=&quot;3475&quot; data-start=&quot;3411&quot;&gt;This project is just the beginning. Future enhancements include:&lt;/p&gt;&lt;ul data-end=&quot;3751&quot; data-start=&quot;3477&quot;&gt;
&lt;li class=&quot;&quot; data-end=&quot;3527&quot; data-start=&quot;3477&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;3527&quot; data-start=&quot;3479&quot;&gt;📱 A &lt;strong data-end=&quot;3498&quot; data-start=&quot;3484&quot;&gt;mobile app&lt;/strong&gt; version for everyday usage&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;3589&quot; data-start=&quot;3528&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;3589&quot; data-start=&quot;3530&quot;&gt;🧮 &lt;strong data-end=&quot;3557&quot; data-start=&quot;3533&quot;&gt;Nutritional analysis&lt;/strong&gt; (calories, macros, allergens)&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;3631&quot; data-start=&quot;3590&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;3631&quot; data-start=&quot;3592&quot;&gt;🛒 Smart &lt;strong data-end=&quot;3629&quot; data-start=&quot;3601&quot;&gt;shopping list generation&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;3690&quot; data-start=&quot;3632&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;3690&quot; data-start=&quot;3634&quot;&gt;🌏 Expansion to &lt;strong data-end=&quot;3688&quot; data-start=&quot;3650&quot;&gt;Middle Eastern and global cuisines&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li class=&quot;&quot; data-end=&quot;3751&quot; data-start=&quot;3691&quot;&gt;
&lt;p class=&quot;&quot; data-end=&quot;3751&quot; data-start=&quot;3693&quot;&gt;👩‍🍳 &lt;strong data-end=&quot;3720&quot; data-start=&quot;3699&quot;&gt;Community recipes&lt;/strong&gt; and feedback-driven learning&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;hr class=&quot;&quot; data-end=&quot;3756&quot; data-start=&quot;3753&quot; /&gt;&lt;h2 class=&quot;&quot; data-end=&quot;3781&quot; data-start=&quot;3758&quot;&gt;👨‍🎓 Final Thoughts&lt;/h2&gt;&lt;p class=&quot;&quot; data-end=&quot;4098&quot; data-start=&quot;3783&quot;&gt;NakMakanApa is more than a technical showcase—it’s a vision for how &lt;strong data-end=&quot;3868&quot; data-start=&quot;3851&quot;&gt;Generative AI&lt;/strong&gt; can enrich daily life in culturally meaningful and health-conscious ways. By combining NLP, computer vision, RAG, and AI reasoning into a seamless user flow, we created an experience that feels human, helpful, and very Malaysian.&lt;/p&gt;&lt;p class=&quot;&quot; data-end=&quot;918&quot; data-start=&quot;537&quot;&gt;



















&lt;/p&gt;&lt;p class=&quot;&quot; data-end=&quot;4209&quot; data-start=&quot;4100&quot;&gt;This project proves that AI can do more than automate tasks—it can guide, support, and inspire better living.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/7484025926017127520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/7484025926017127520' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/7484025926017127520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/7484025926017127520'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/04/google-gen-ai-5-days-intensive-course.html' title='Google Gen AI 5-days Intensive Course - Capstone Project - AI Food Agent by Haszeli'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEgV9P8lkgR1fKJ2P9cF0KdkEZm08QK3CkEoM8jQxgLS_wUvRCUzjhaKFuLd3fCQGd2eZkiUOciDY_L1kqK8okHAqyRYVx9mDBcuhje0SnykNEhLUnJvzauYkHJwUDYL58QT_S9F-dXqM14fNNbtHRPtzAx1R4-FWfcVucTbLPn4lMpekusGIXEU-W7xEInA=s72-w640-h366-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-5690127615370173954</id><published>2025-04-16T03:05:00.000-07:00</published><updated>2025-04-16T03:05:49.867-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="2025"/><category scheme="http://www.blogger.com/atom/ns#" term="AI"/><category scheme="http://www.blogger.com/atom/ns#" term="Artificial Intelligence"/><category scheme="http://www.blogger.com/atom/ns#" term="Code Project"/><category scheme="http://www.blogger.com/atom/ns#" term="Google"/><category scheme="http://www.blogger.com/atom/ns#" term="Kaggle"/><category scheme="http://www.blogger.com/atom/ns#" term="LLM"/><category scheme="http://www.blogger.com/atom/ns#" term="Notebook"/><category scheme="http://www.blogger.com/atom/ns#" term="OpenAI"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><category scheme="http://www.blogger.com/atom/ns#" term="Sample Code"/><category scheme="http://www.blogger.com/atom/ns#" term="SLM"/><title type='text'>Food Discovery AI Agent</title><content type='html'>&lt;h2 style=&quot;text-align: left;&quot;&gt;&amp;nbsp;# 🍽️ Food Discovery AI Agent (Malaysian/Asian Cuisine)&lt;/h2&gt;&lt;p&gt;This project is a **proof-of-concept AI agent** that recommends **what to eat** and **where to go** based on:&lt;/p&gt;&lt;p&gt;- ✅ User preferences and dietary restrictions&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;- 🕒 Time of day (e.g., lunch, dinner)&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;- 🌦️ Real-time weather at your current location&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;- 📍 Your destination or current location&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;- 🧠 LLM-powered reasoning (OpenAI GPT-3.5)&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;### 💡 How It Works&lt;/h3&gt;&lt;p&gt;1. **User Input**: Collects dietary preferences, time, and destination&lt;/p&gt;&lt;p&gt;2. **Weather Fetch**: Pulls real-time weather via OpenWeather API&lt;/p&gt;&lt;p&gt;3. **Place Discovery**: Uses Google Places API to find nearby restaurants or hawkers&lt;/p&gt;&lt;p&gt;4. **LLM Reasoning**: GPT analyzes the context and filters/summarizes results&lt;/p&gt;&lt;p&gt;5. **Visual Map**: Recommended spots are plotted on an interactive map&lt;/p&gt;&lt;p&gt;6. **Export**: CSV file download available&lt;/p&gt;&lt;p&gt;7. **Summary Report**: Optional AI-written recap of the session&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;### 🔐 API Keys Required&lt;/h3&gt;&lt;p&gt;- OpenWeatherMap&lt;/p&gt;&lt;p&gt;- Google Places&lt;/p&gt;&lt;p&gt;- OpenAI (for summary)&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Built with ❤️ for Malaysian/Asian food lovers 🍜🇲🇾&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;div&gt;The code is accessible at &lt;a href=&quot;https://www.kaggle.com/code/nurulhaszeliahmad/agentfoodiet&quot;&gt;https://www.kaggle.com/code/nurulhaszeliahmad/agentfoodiet&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/5690127615370173954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/5690127615370173954' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/5690127615370173954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/5690127615370173954'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/04/food-discovery-ai-agent.html' title='Food Discovery AI Agent'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-5384450016505758361</id><published>2025-03-27T08:55:00.000-07:00</published><updated>2025-03-27T08:55:44.428-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="2025"/><category scheme="http://www.blogger.com/atom/ns#" term="Information Security"/><category scheme="http://www.blogger.com/atom/ns#" term="Software Security"/><category scheme="http://www.blogger.com/atom/ns#" term="Vulnerability"/><title type='text'>Secure By Design: Security in Mind</title><content type='html'>&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBkEeYtNZn-qzXG9de7O9W_iSC-CL5Tfb0A7Vofej4S0XUaHG5MbXFCqL-0rC8gW-c6RjjxSudAZFAkzSe-hVCYP1_i6im7u12cN_SwM9wbVHtZSI6oMKOg8LK40MioRHL278uiapQhea8mhYIsFh9ymkqKhdalCc9MVsVt_Wsv1tHf2RHJkWsoO1eWB_P/s1792/Designer%20(5).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1792&quot; height=&quot;366&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBkEeYtNZn-qzXG9de7O9W_iSC-CL5Tfb0A7Vofej4S0XUaHG5MbXFCqL-0rC8gW-c6RjjxSudAZFAkzSe-hVCYP1_i6im7u12cN_SwM9wbVHtZSI6oMKOg8LK40MioRHL278uiapQhea8mhYIsFh9ymkqKhdalCc9MVsVt_Wsv1tHf2RHJkWsoO1eWB_P/w640-h366/Designer%20(5).jpeg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;section class=&quot;section section--body&quot; name=&quot;be05&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;c175&quot;&gt;Introduction&lt;/h4&gt;&lt;p class=&quot;graf graf--p graf--hasDropCapModel graf--hasDropCap&quot; name=&quot;b128&quot;&gt;&lt;span class=&quot;graf-dropCap&quot;&gt;I&lt;/span&gt;magine this: You’ve just finished building your dream house. It’s beautiful, modern, everything you’ve ever wanted. But then, as you’re about to move in, you realize — oh no, there are no locks on the doors. Now, instead of enjoying your new home, you’re stuck trying to retrofit security into something that wasn’t designed with it in mind.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;b2cb&quot;&gt;Sounds crazy, right? Well, guess what — that’s exactly how a lot of software gets built today. We focus so much on making things work and look good that we forget to lock the doors. And when bad guys come knocking (and trust me, they will), we’re left scrambling to fix the mess.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;bcaa&quot;&gt;This is something I’ve thought about a lot. With my background in IT and software security — yep, I even have a Master’s degree in it — I’ve spent years studying how vulnerabilities happen and how we can stop them before they cause trouble. What I’ve learned is simple: Security isn’t something you tack on at the end. It’s something you build in from the start.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;90c9&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;b5fb&quot;&gt;The Evolution of Secure Software Development&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;57ae&quot;&gt;Let’s rewind a bit. Back in the early 2000s, Microsoft was getting hammered for all the security flaws in its products. People were frustrated, and Microsoft knew they had to do something. So, Bill Gates sent out a memo to his teams saying, “Hey, from now on, trustworthy computing is our top priority.” That memo led to the creation of the &lt;em class=&quot;markup--em markup--p-em&quot;&gt;Security Development Lifecycle (SDL) &lt;/em&gt;— a process that made security a core part of every step of software development.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;fc29&quot;&gt;And guess what? It worked. Over time, Microsoft not only reduced the number of vulnerabilities in its products but also set a new standard for secure software development. Even Linux, which has always been seen as super secure, struggled to keep up. The lesson here? If you bake security into your process from the beginning, you save yourself a ton of headaches later.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;5e9a&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;526c&quot;&gt;Modern Approaches to Security in Development&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;3aa3&quot;&gt;So, how do we make sure security is part of the process? Let me break it down for you.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;cf09&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;1. The Three Pillars of Software Security&lt;/strong&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;aefd&quot;&gt;There are three main ways we test software for vulnerabilities:&lt;/p&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;52ff&quot;&gt;&lt;strong class=&quot;markup--strong markup--blockquote-strong&quot;&gt;Static Analysis&lt;/strong&gt;: This is like proofreading your code before it goes live. You check for mistakes while the code is still sitting there, untouched.&lt;/blockquote&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;4ee6&quot;&gt;&lt;strong class=&quot;markup--strong markup--blockquote-strong&quot;&gt;Dynamic Analysis&lt;/strong&gt;: This happens when the code is running. It’s like watching someone use your app in real-time and seeing if anything breaks or looks suspicious.&lt;/blockquote&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;d4b0&quot;&gt;&lt;strong class=&quot;markup--strong markup--blockquote-strong&quot;&gt;Hybrid Analysis&lt;/strong&gt;: This combines the best of both worlds — static and dynamic testing — to give you a complete picture of your software’s security.&lt;/blockquote&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;ff27&quot;&gt;But tools alone won’t cut it. What really matters is the mindset. When you’re writing code, you need to think, “How could someone misuse this?” That’s what we call Secure by Design—building security into the DNA of your software.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;5a29&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;2. SecDevOps: Making Security Everyone’s Job&lt;/strong&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;b685&quot;&gt;Now, let’s talk about DevOps. If you’re not familiar with it, don’t worry — it’s just a fancy way of saying, “We’re going to build, test, and release software faster.” But here’s the problem: In traditional DevOps, security often gets left behind. Developers are racing to push features out the door, and security becomes an afterthought.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;c8fe&quot;&gt;That’s why we have &lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;&lt;em class=&quot;markup--em markup--p-em&quot;&gt;DevSecOps&lt;/em&gt;&lt;/strong&gt;&lt;em class=&quot;markup--em markup--p-em&quot;&gt; &lt;/em&gt;— where security is integrated into the DevOps process. Some people even prefer the term &lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;&lt;em class=&quot;markup--em markup--p-em&quot;&gt;SecDevOps&lt;/em&gt;&lt;/strong&gt;, which flips the order to show that security comes first. I like this idea because it reminds us that security isn’t just one team’s job — it’s everyone’s responsibility.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;65a9&quot;&gt;To make this work, we focus on two key practices, on top of CI/CD:&lt;/p&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;13dc&quot;&gt;&lt;strong class=&quot;markup--strong markup--blockquote-strong&quot;&gt;Continuous Testing&lt;/strong&gt;: Running security checks at every stage of development, not just at the end.&lt;/blockquote&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;4151&quot;&gt;&lt;strong class=&quot;markup--strong markup--blockquote-strong&quot;&gt;Continuous Security&lt;/strong&gt;: Keeping an eye on security throughout the entire lifecycle of the software.&lt;/blockquote&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;f6af&quot;&gt;By shifting security “left” (earlier in the process), we catch problems before they become big, expensive disasters.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;896d&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;82e1&quot;&gt;Balancing Security and Business&amp;nbsp;Demands&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;f86d&quot;&gt;Here’s the tricky part: Developers are under pressure to deliver features fast. Businesses want results yesterday. But if we rush too much, we risk leaving the doors wide open for attackers. So, how do we find the balance?&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;0911&quot;&gt;It comes down to risk management. Instead of trying to fix every single issue, we focus on the biggest risks first. For example, if a vulnerability could expose customer data, that’s a top priority. If it’s something minor, maybe we can address it later.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;9ae3&quot;&gt;The goal is to move fast without breaking things. Security shouldn’t slow you down — it should help you go faster by preventing costly mistakes.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;b839&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;5c75&quot;&gt;&lt;strong class=&quot;markup--strong markup--h4-strong&quot;&gt;Conclusion: Secure First, Deploy&amp;nbsp;Smart&lt;/strong&gt;&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;9833&quot;&gt;Here’s the bottom line: Security isn’t something you can slap on at the end — it has to be built in from the start. Whether your team is using Agile methodologies, adopting SecDevOps, leveraging program analysis tools, or following frameworks like Microsoft’s Security Development Lifecycle (SDL), the key is simple: Ensure it’s secure by design.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;f786&quot;&gt;Think of it this way — no matter what tools or processes you use, they’re only as effective as the mindset behind them. If security is treated as an afterthought, even the best tools won’t save you. But if you embed security into every step of your process — whether you’re writing code, running tests, or deploying features—you’re setting yourself up for success.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;f327&quot;&gt;So, here’s my challenge to you: How is your organization ensuring Secure by Design? Are you integrating it into your Agile sprints? Are you shifting security left in your SecDevOps pipeline? Or are you relying on static and dynamic analysis to catch vulnerabilities early? Whatever your approach, the goal is the same: Build software that’s secure from the ground up.&lt;/p&gt;&lt;blockquote class=&quot;graf graf--pullquote graf--hasDropCapModel&quot; name=&quot;fbb1&quot;&gt;Because when it comes to security, we’re all in this together.&lt;/blockquote&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;00dd&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;b910&quot;&gt;#CyberSecurity #SecureByDesign #DevSecOps #SecDevOps #SoftwareDevelopment #RiskManagement&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/5384450016505758361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/5384450016505758361' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/5384450016505758361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/5384450016505758361'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/03/secure-by-design-security-in-mind.html' title='Secure By Design: Security in Mind'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBkEeYtNZn-qzXG9de7O9W_iSC-CL5Tfb0A7Vofej4S0XUaHG5MbXFCqL-0rC8gW-c6RjjxSudAZFAkzSe-hVCYP1_i6im7u12cN_SwM9wbVHtZSI6oMKOg8LK40MioRHL278uiapQhea8mhYIsFh9ymkqKhdalCc9MVsVt_Wsv1tHf2RHJkWsoO1eWB_P/s72-w640-h366-c/Designer%20(5).jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-6259622731953997595</id><published>2025-03-10T01:09:00.000-07:00</published><updated>2025-03-10T01:09:33.316-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Artificial Intelligence"/><category scheme="http://www.blogger.com/atom/ns#" term="Leadership"/><category scheme="http://www.blogger.com/atom/ns#" term="Management"/><category scheme="http://www.blogger.com/atom/ns#" term="Thought Leaders"/><title type='text'>3 Pillars of Leading in the Age of AI - My Personal View</title><content type='html'>&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJSbhd6vCCYei9pINF32LSw55qwIH50eX9VRJ_7Jz32AoO3DfraKgF2Js-qOjkhWHxwa1ITI5T2kAytgrCVsSkPq8wdU9uK9pwqjrOz5_IVxmoUB_Tvl_rgjyVjymkRf8qqrkP6RxAMJAp1wx2hyphenhyphenx8XfDyVPAgUwLYqJVpA9JxdQw0GWYyzR7b_CcYFHbE/s1792/Designer%20(4).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1792&quot; height=&quot;366&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJSbhd6vCCYei9pINF32LSw55qwIH50eX9VRJ_7Jz32AoO3DfraKgF2Js-qOjkhWHxwa1ITI5T2kAytgrCVsSkPq8wdU9uK9pwqjrOz5_IVxmoUB_Tvl_rgjyVjymkRf8qqrkP6RxAMJAp1wx2hyphenhyphenx8XfDyVPAgUwLYqJVpA9JxdQw0GWYyzR7b_CcYFHbE/w640-h366/Designer%20(4).jpeg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;ebd7&quot;&gt;Introduction&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;a435&quot;&gt;In an era of rapid technological advancement, technical expertise alone is insufficient for effective leadership. The most successful tech leaders of the future will be those who master three essential pillars: AI-driven decision-making, systems thinking, and human-centric leadership. From my personal experience, reading, and observations, I believe these three principles are essential for effective leadership in today’s advanced technology environment. Here’s why these three pillars matter — and how you can apply them to future-proof your leadership.&lt;/p&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;8ad6&quot;&gt;Pillar 1: AI-Driven Decision&amp;nbsp;Making&lt;/h3&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;97ab&quot;&gt;From Data to&amp;nbsp;Insight&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;35c7&quot;&gt;AI is more than just a tool — it’s a game-changer for decision-making. By leveraging AI to analyze project performance, customer sentiment, and team dynamics, leaders can make data-driven decisions with greater accuracy and speed. For example, during a major corporate merger, you can use sentiment analysis tools to track employee morale across teams. The data revealed early warning signs of disengagement, allowing us to intervene before it escalated into a productivity crisis. &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://explorance.com/blog/employee-sentiment-analysis-the-key-to-boosting-engagement-and-retention/&quot; href=&quot;https://explorance.com/blog/employee-sentiment-analysis-the-key-to-boosting-engagement-and-retention/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;409c&quot;&gt;Ethical AI: Augmenting, Not Replacing, Judgment&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;5c82&quot;&gt;AI should enhance human decision-making, not replace it. As tech leaders, we must ask: Does this tool amplify human intelligence or override it? Ethical AI adoption means ensuring transparency, fairness, and accountability in how we deploy these technologies. &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://lumenalta.com/insights/ethical-considerations-of-ai&quot; href=&quot;https://lumenalta.com/insights/ethical-considerations-of-ai&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;39b1&quot;&gt;Pillar 2: Systems&amp;nbsp;Thinking&lt;/h3&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;475d&quot;&gt;Zoom Out, Then Zoom&amp;nbsp;In&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;e8e4&quot;&gt;Tech leaders must balance big-picture vision with attention to detail. A systems-thinking approach ensures that solutions align with business objectives while remaining adaptable. For example, while developing a healthcare app, we could start by mapping the end-to-end user journey before reverse-engineering the tech stack. This approach ensured a seamless user experience while optimizing backend efficiency. &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://www.researchgate.net/publication/304038606_From_service_to_product_App_development_in_modern_healthcare_provision&quot; href=&quot;https://www.researchgate.net/publication/304038606_From_service_to_product_App_development_in_modern_healthcare_provision&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;d055&quot;&gt;Resilience by&amp;nbsp;Design&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;de04&quot;&gt;Modern architecture must be adaptive and resilient. A single point of failure can jeopardize an entire operation, so designing for scalability and flexibility is crucial. &lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Case Study&lt;/strong&gt;: An e-commerce platform experienced sudden traffic spikes during peak sales events, such as Black Friday. By implementing AI-driven auto-scaling and leveraging microservices architecture, we achieved 99.99% uptime, even during unexpected surges. This approach not only ensured seamless performance but also optimized resource utilization and reduced operational costs. &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://devops.com/ai-driven-microservices-the-future-of-cloud-scalability/&quot; href=&quot;https://devops.com/ai-driven-microservices-the-future-of-cloud-scalability/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;30d7&quot;&gt;Pillar 3: Human-Centric Leadership&lt;/h3&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;2e23&quot;&gt;Bridging the Soft Skills&amp;nbsp;Gap&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;f8e3&quot;&gt;Technical failures are rarely the primary reason projects go off course. According to a report, 70% of project failures stem from poor communication, misalignment, and team disconnects — not technical shortcomings. &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://www.linkedin.com/pulse/dark-side-project-management-why-70-projects-8gtcf/&quot; href=&quot;https://www.linkedin.com/pulse/dark-side-project-management-why-70-projects-8gtcf/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;c453&quot;&gt;The Approach: “No-Agenda” Check-ins&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;e080&quot;&gt;Leadership is about more than managing tasks — it’s about understanding people. One of the most effective strategies has been hosting weekly “no-agenda” check-ins. These informal meetings allow team members to bring up concerns before they become blockers, fostering a culture of trust and open communication. &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://www.edutopia.org/article/using-no-agenda-meetings-effectively-barbara-haeffner/&quot; href=&quot;https://www.edutopia.org/article/using-no-agenda-meetings-effectively-barbara-haeffner/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;3f41&quot;&gt;Conclusion: The Future Belongs to Adaptive&amp;nbsp;Leaders&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;d932&quot;&gt;To stay ahead in the age of AI, leaders must strike the right balance between technical acumen and human intuition. The most impactful leaders will be those who can seamlessly integrate AI-driven insights, systems-level thinking, and people-first leadership.&amp;nbsp;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;fffd&quot;&gt;What’s your non-negotiable leadership principle? Let’s discuss!&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;e090&quot;&gt;#TechLeadership #AI #SystemsThinking #ProjectManagement #FutureOfWork&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/6259622731953997595/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/6259622731953997595' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/6259622731953997595'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/6259622731953997595'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/03/3-pillars-of-leading-in-age-of-ai-my.html' title='3 Pillars of Leading in the Age of AI - My Personal View'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJSbhd6vCCYei9pINF32LSw55qwIH50eX9VRJ_7Jz32AoO3DfraKgF2Js-qOjkhWHxwa1ITI5T2kAytgrCVsSkPq8wdU9uK9pwqjrOz5_IVxmoUB_Tvl_rgjyVjymkRf8qqrkP6RxAMJAp1wx2hyphenhyphenx8XfDyVPAgUwLYqJVpA9JxdQw0GWYyzR7b_CcYFHbE/s72-w640-h366-c/Designer%20(4).jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-3715224639192168892</id><published>2025-03-10T00:14:00.000-07:00</published><updated>2025-03-10T00:14:21.014-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Emerging Technologies"/><category scheme="http://www.blogger.com/atom/ns#" term="Enterprise Architect"/><category scheme="http://www.blogger.com/atom/ns#" term="Project Management"/><category scheme="http://www.blogger.com/atom/ns#" term="Quantum"/><category scheme="http://www.blogger.com/atom/ns#" term="Solution Architect"/><category scheme="http://www.blogger.com/atom/ns#" term="Systems Architect"/><title type='text'>Quantum Intelligence: The Next Frontier for Systems Architects</title><content type='html'>&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvQq_tEhTO1-m4YlOM8h9j6PGR0WTk63j8nJrj2NUR1u-jV-aEZwYlQ2Hduf_Q9hy1X9cZUa8XTHFLPvz3jCVXAdSWord7MiFjfcEf89dot_sGncmEJmbJMeunn0V8sccHZnc-Ab_DJSBGDr12q3WBXO7_NlV3O-gHRJ1uak5iGT1smWv5VA7lJaiekkPs/s1792/Designer%20(3).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1792&quot; height=&quot;366&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvQq_tEhTO1-m4YlOM8h9j6PGR0WTk63j8nJrj2NUR1u-jV-aEZwYlQ2Hduf_Q9hy1X9cZUa8XTHFLPvz3jCVXAdSWord7MiFjfcEf89dot_sGncmEJmbJMeunn0V8sccHZnc-Ab_DJSBGDr12q3WBXO7_NlV3O-gHRJ1uak5iGT1smWv5VA7lJaiekkPs/w640-h366/Designer%20(3).jpeg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;paragraph&quot; style=&quot;background-color: white; border: 0px; color: #060607; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, MIUI, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-size: 14px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-emoji: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; letter-spacing: 0.25px; line-height: 24px; margin-inline: 0px; margin: 0px 0px 0.859em; max-width: 100%; overflow: auto hidden; padding: 0px; vertical-align: baseline; white-space-collapse: preserve !important; word-break: break-word !important;&quot;&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;72bc&quot;&gt;Introduction&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;dd98&quot;&gt;Quantum computing has transitioned from a theoretical concept to a rapidly evolving reality. Companies like IBM and Google have achieved significant breakthroughs in quantum supremacy, shifting the technology from research labs to real-world applications. For systems architects, this presents both an opportunity and a challenge: adapt now or risk obsolescence.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;bef2&quot;&gt;Unlike traditional computing, which relies on binary logic (0s and 1s), quantum computing leverages qubits, which can exist in multiple states simultaneously. This fundamental shift in computation means that the architectures we rely on today may not be sufficient for the problems of tomorrow.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;88a3&quot;&gt;So, how can systems architects prepare for this new frontier? Here’s how enterprise architects should do it.&lt;/p&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;41bc&quot;&gt;Why Quantum Changes Everything&lt;/h3&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;7844&quot;&gt;Beyond Binary: A Paradigm Shift in Computing&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;064b&quot;&gt;Classical computers process information sequentially, while quantum computers operate in superposition—meaning they can perform exponential calculations in parallel. This opens the door to solving previously intractable problems, such as:&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;5c45&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Drug discovery&lt;/strong&gt;: simulating molecular interactions at an atomic level, revolutionizing pharmaceutical development. &lt;a class=&quot;markup--anchor markup--li-anchor&quot; data-href=&quot;https://www.weforum.org/stories/2025/01/quantum-computing-drug-development/&quot; href=&quot;https://www.weforum.org/stories/2025/01/quantum-computing-drug-development/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;56e2&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Supply chain optimization&lt;/strong&gt;: Running complex logistical simulations that classical computers would take years to process. &lt;a class=&quot;markup--anchor markup--li-anchor&quot; data-href=&quot;https://arxiv.org/html/2402.17520v1&quot; href=&quot;https://arxiv.org/html/2402.17520v1&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;b0ed&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;AI acceleration&lt;/strong&gt;: Enhancing machine learning models with faster, more efficient computation. &lt;a class=&quot;markup--anchor markup--li-anchor&quot; data-href=&quot;https://arxiv.org/abs/2011.00027&quot; href=&quot;https://arxiv.org/abs/2011.00027&quot; rel=&quot;noreferrer nofollow noopener noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;f305&quot;&gt;For enterprise architects, the implications are clear:&amp;nbsp;&lt;/p&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;f5b3&quot;&gt;designing infrastructures that can integrate and leverage quantum capabilities will be a competitive advantage.&lt;/blockquote&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;7779&quot;&gt;The Quantum Threat to&amp;nbsp;Security&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;116c&quot;&gt;Quantum computing isn’t just an opportunity—it&#39;s also a security risk. Current encryption methods, such as RSA and ECC, rely on the computational difficulty of factoring large prime numbers. A sufficiently powerful quantum computer could break these encryptions overnight.&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;d9fe&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Are your systems quantum-safe?&lt;/strong&gt;&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;d629&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Have you considered post-quantum cryptography (PQC) strategies?&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;9403&quot;&gt;The National Institute of Standards and Technology (NIST) is already working on post-quantum encryption standards. Systems architects must stay ahead by ensuring their infrastructures can transition to quantum-resistant algorithms. &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://csrc.nist.gov/projects/post-quantum-cryptography&quot; href=&quot;https://csrc.nist.gov/projects/post-quantum-cryptography&quot; rel=&quot;noreferrer nofollow noopener noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;72f5&quot;&gt;Designing Quantum-Ready Systems&lt;/h3&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;36b4&quot;&gt;Hybrid Architectures: The Best of Both&amp;nbsp;Worlds&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;055b&quot;&gt;Quantum computing is not yet ready to replace classical computing, but hybrid systems can help organizations start leveraging its power gradually.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;f1d8&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Example&lt;/strong&gt;: A financial institution might use classical systems for daily transactions but integrate quantum computing for portfolio optimization and fraud detection.&lt;/p&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;e8cb&quot;&gt;Agile, Modular Frameworks&lt;/h4&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;8032&quot;&gt;To prepare for quantum integration, modularity is key. Building flexible, scalable architectures ensures that systems can evolve alongside quantum advancements.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;9ea6&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Real-world case study&lt;/strong&gt;: A banking client I worked with implemented a “quantum-ready” API layer, designed to seamlessly integrate with quantum computing resources when the technology matures. This strategic move future-proofed their infrastructure without requiring an immediate overhaul.&lt;/p&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;39ce&quot;&gt;Your Quantum Journey: Preparing for the&amp;nbsp;Future&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;d806&quot;&gt;Recognizing the urgency of quantum computing, we should took these steps to future-proof our expertise and systems:&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;2879&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Partnered with IBM Quantum&lt;/strong&gt;: Conducted quantum simulations using their cloud-based quantum computing platform. &lt;a class=&quot;markup--anchor markup--li-anchor&quot; data-href=&quot;https://www.ibm.com/quantum&quot; href=&quot;https://www.ibm.com/quantum&quot; rel=&quot;noreferrer nofollow noopener noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;2b0a&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Upskilled Your Team in Qiskit&lt;/strong&gt;: Trained engineers to use IBM’s open-source quantum SDK, ensuring they understand the fundamentals of quantum programming. &lt;a class=&quot;markup--anchor markup--li-anchor&quot; data-href=&quot;https://qiskit.org/&quot; href=&quot;https://qiskit.org/&quot; rel=&quot;noreferrer nofollow noopener noopener&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;0131&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Began Redesigning Legacy Systems&lt;/strong&gt;: Integrated quantum-friendly algorithms into existing infrastructure to prepare for gradual adoption.&lt;/li&gt;&lt;/ul&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;44f5&quot;&gt;Conclusion: The Time to Act is&amp;nbsp;Now&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;2631&quot;&gt;The quantum revolution isn’t decades away—it&#39;s unfolding now. Systems architects who proactively explore and integrate quantum-ready solutions will be at the forefront of technological innovation.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;1c2b&quot;&gt;So, what’s your first step toward quantum readiness? Are you exploring quantum-safe encryption, experimenting with hybrid architectures, or upskilling your team?&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;db85&quot;&gt;Let’s discuss! Share your thoughts and strategies in the comments.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;4627&quot;&gt;#QuantumComputing #SystemsArchitecture #EmergingTech #Innovation #FutureOfComputing&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/3715224639192168892/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/3715224639192168892' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/3715224639192168892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/3715224639192168892'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/03/quantum-intelligence-next-frontier-for.html' title='Quantum Intelligence: The Next Frontier for Systems Architects'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvQq_tEhTO1-m4YlOM8h9j6PGR0WTk63j8nJrj2NUR1u-jV-aEZwYlQ2Hduf_Q9hy1X9cZUa8XTHFLPvz3jCVXAdSWord7MiFjfcEf89dot_sGncmEJmbJMeunn0V8sccHZnc-Ab_DJSBGDr12q3WBXO7_NlV3O-gHRJ1uak5iGT1smWv5VA7lJaiekkPs/s72-w640-h366-c/Designer%20(3).jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-490908713377995278</id><published>2025-03-09T18:59:00.000-07:00</published><updated>2025-03-09T18:59:23.858-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AI"/><category scheme="http://www.blogger.com/atom/ns#" term="Artificial Intelligence"/><category scheme="http://www.blogger.com/atom/ns#" term="Digital Transformation"/><category scheme="http://www.blogger.com/atom/ns#" term="Emerging Technologies"/><category scheme="http://www.blogger.com/atom/ns#" term="Project Management"/><title type='text'>Will AI replace the Project Manager?</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOx5jnCrGAoessz87r05LbHXG0PH68s9A9UoUr45yWRGpcBkZ4LwSA06OU1HFigki79OwfU2J8rIOuiVs8Nf407MsvPxKYjH12_eAuDuxjkNuV5Y6hNAtUsTnufySFEcJm6FOsbin5NbwhXdRKppMkF21fCC2AcFYhgD3Jl1jbyt1PggByekPmdxlFmmKH/s1024/Designer%20(1).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOx5jnCrGAoessz87r05LbHXG0PH68s9A9UoUr45yWRGpcBkZ4LwSA06OU1HFigki79OwfU2J8rIOuiVs8Nf407MsvPxKYjH12_eAuDuxjkNuV5Y6hNAtUsTnufySFEcJm6FOsbin5NbwhXdRKppMkF21fCC2AcFYhgD3Jl1jbyt1PggByekPmdxlFmmKH/w640-h640/Designer%20(1).jpeg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Introduction&lt;/h3&gt;Artificial intelligence is transforming industries at an unprecedented pace, and project management is no exception. Yet, amid all the talk of automation and digital transformation, a common fear emerges: Will AI replace another role, the project manager?&lt;br /&gt;&lt;br /&gt;The reality is quite the opposite. AI is not here to take over but to enhance human capabilities, making project managers more effective, strategic, and valuable than ever before. By automating repetitive tasks, improving decision-making, and mitigating risks, AI allows project managers to focus on what truly matters—leadership, innovation, and value creation.&lt;br /&gt;&lt;br /&gt;In this article, I’ll share how AI has revolutionized my project management approach and why the future belongs to PMs who embrace it.&lt;div&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;AI-PM Partnership: A Game-Changer for Efficiency&lt;/h3&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Automation ≠ Replacement&lt;/h4&gt;AI excels at handling repetitive, time-consuming tasks such as scheduling, data entry, and progress tracking. But rather than replacing human intuition and leadership, AI acts as a force multiplier, allowing project managers to focus on strategy, stakeholder alignment, and team motivation.&lt;br /&gt;&lt;br /&gt;Example: AI-powered tools like ClickUp and Monday.com now analyze historical data and team performance to predict project delays. This foresight helps project managers proactively address potential bottlenecks rather than react to crises.&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Risk Mitigation: Seeing Problems Before They Arise&lt;/h4&gt;One of AI’s most powerful contributions to project management is its ability to identify and mitigate risks before they escalate. Machine learning algorithms can analyze vast amounts of data to detect patterns that humans might overlook, helping teams make informed decisions.&lt;br /&gt;&lt;br /&gt;Case in Point: During a recent cloud migration project, we integrated an AI-driven risk assessment tool. The system identified a 92% chance of cost overruns due to scope creep—weeks before the issue would have surfaced. This early warning allowed us to recalibrate scope and budget, ultimately preventing financial losses and ensuring a smooth transition.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Real-World Case Study: AI in Action&lt;/h3&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;The Challenge&lt;/h4&gt;A client approached us with an ambitious goal: launching a new product in just four months instead of the planned six. Given the compressed timeline, efficient resource management and rapid decision-making were critical.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;How AI Transformed the Project&lt;/h4&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Resource Allocation Optimization&lt;/li&gt;&lt;li&gt;Automated Reporting &amp;amp; Insights&lt;/li&gt;&lt;/ol&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;The Outcome&lt;/h4&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;✅ Projects delivered on time.&lt;/div&gt;&lt;div&gt;✅ 25% budget surplus due to optimized resource allocation.&lt;/div&gt;&lt;div&gt;✅ Higher team morale with reduced administrative burden&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;How to Start Leveraging AI in Your Projects&lt;/h3&gt;The good news? You don’t need a PhD in AI to start incorporating these tools into your workflow. Here are three simple steps to begin:&lt;br /&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Audit Your Workflow&lt;/li&gt;&lt;li&gt;Experiment with AI-powered tools&lt;/li&gt;&lt;li&gt;Upskill Your Team&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Conclusion: AI Is Your Co-Pilot, Not Your Replacement&lt;/h3&gt;AI isn’t here to take your job—it’s here to make you an unstoppable project manager. By embracing AI-driven insights, automation, and predictive capabilities, you can make smarter decisions, deliver projects more efficiently, and drive greater impact for your teams and stakeholders.&lt;br /&gt;&lt;br /&gt;Your Turn: How are you integrating AI into your project management workflow? What’s your biggest challenge in adopting AI? Let’s discuss this in the comments!&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglorIIp5oh4Ibp0vlqBV2RugCoUVRMdw61HcAsZBfouedszGvhyphenhyphen5Q_yNgWu-BCGgZJE2GGgTPEa_HFJAikI8x3Q8ccgRW3Ol4UqOTk-OGUL4QdZsfyavvge3EXo-yPxn_BoMj35EKsCmirOFWOgzgw7q_O0TSuaYkTgimBOSyrpbxKxEeU_JNeqmBvnGTL/s1024/Designer%20(2).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglorIIp5oh4Ibp0vlqBV2RugCoUVRMdw61HcAsZBfouedszGvhyphenhyphen5Q_yNgWu-BCGgZJE2GGgTPEa_HFJAikI8x3Q8ccgRW3Ol4UqOTk-OGUL4QdZsfyavvge3EXo-yPxn_BoMj35EKsCmirOFWOgzgw7q_O0TSuaYkTgimBOSyrpbxKxEeU_JNeqmBvnGTL/w400-h400/Designer%20(2).jpeg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;#AI #ProjectManagement #FutureOfWork #TechLeadership #Innovation&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/490908713377995278/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/490908713377995278' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/490908713377995278'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/490908713377995278'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/03/will-ai-replace-project-manager.html' title='Will AI replace the Project Manager?'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOx5jnCrGAoessz87r05LbHXG0PH68s9A9UoUr45yWRGpcBkZ4LwSA06OU1HFigki79OwfU2J8rIOuiVs8Nf407MsvPxKYjH12_eAuDuxjkNuV5Y6hNAtUsTnufySFEcJm6FOsbin5NbwhXdRKppMkF21fCC2AcFYhgD3Jl1jbyt1PggByekPmdxlFmmKH/s72-w640-h640-c/Designer%20(1).jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-3706363152385457096</id><published>2025-02-10T00:00:00.000-08:00</published><updated>2025-02-10T00:00:06.008-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Application Development"/><category scheme="http://www.blogger.com/atom/ns#" term="Architecture"/><category scheme="http://www.blogger.com/atom/ns#" term="Design"/><category scheme="http://www.blogger.com/atom/ns#" term="Framework"/><category scheme="http://www.blogger.com/atom/ns#" term="Java"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><category scheme="http://www.blogger.com/atom/ns#" term="Software Development"/><category scheme="http://www.blogger.com/atom/ns#" term="Web-based application"/><title type='text'>JHipster vs Vaadin vs Spring Boot - Choosing your framework</title><content type='html'>&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiR9iJavy_Frq-iYGVIqpiE_2a1SlzN-xV-TX3h7clTiOSzy-GmHHzZrDJfeXulGPWX2FA37KhxsWJu-CgfWCZPEKGu7iVOiY9AS0qZ6VZhqczo7ThMy8qjY5O68LsJ67TAYGt77LbB6ASepsQWcNsnr7uilx29WYODMcLgGKdbVWubN70mizoSc8bxVxNT/s1792/Designer%20(14).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1792&quot; height=&quot;366&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiR9iJavy_Frq-iYGVIqpiE_2a1SlzN-xV-TX3h7clTiOSzy-GmHHzZrDJfeXulGPWX2FA37KhxsWJu-CgfWCZPEKGu7iVOiY9AS0qZ6VZhqczo7ThMy8qjY5O68LsJ67TAYGt77LbB6ASepsQWcNsnr7uilx29WYODMcLgGKdbVWubN70mizoSc8bxVxNT/w640-h366/Designer%20(14).jpeg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: justify;&quot;&gt;&lt;section class=&quot;section section--body&quot; name=&quot;b1d7&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;7266&quot;&gt;Java frameworks provide pre-written code and tools that simplify the development of Java applications. They handle common tasks like database interaction, web request handling, and user interface creation, allowing developers to focus on the unique logic of their applications. Frameworks promote code reusability, consistency, and best practices, ultimately speeding up development and improving application quality. They range from lightweight libraries to full-fledged platforms that dictate the structure of your application.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;41c0&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;h3&gt;&lt;strong class=&quot;markup--strong markup--h4-strong&quot;&gt;Which ones are suitable for&amp;nbsp;you?&lt;/strong&gt;&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;e9b3&quot;&gt;Okay, let’s start with a brief overview of the frameworks.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;f53f&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;1. Spring Boot&lt;/strong&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;4b4e&quot;&gt;Spring Boot is not &lt;em class=&quot;markup--em markup--p-em&quot;&gt;strictly&lt;/em&gt; a full-stack framework in the same way as the others. It’s more accurately described as a &lt;em class=&quot;markup--em markup--p-em&quot;&gt;microframework&lt;/em&gt; or a &lt;em class=&quot;markup--em markup--p-em&quot;&gt;toolkit&lt;/em&gt; built on top of the larger Spring Framework. Its primary goal is to drastically simplify the setup and configuration of Spring applications. Think of Spring Boot as the express lane for Spring development.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;9f99&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Key Features:&lt;/strong&gt;&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;d16e&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Auto-configuration:&lt;/strong&gt; Spring Boot automatically configures many beans (objects managed by Spring) based on dependencies in your project. This reduces the amount of manual configuration you have to do.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;1e37&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Embedded Servers:&lt;/strong&gt; Easily embed Tomcat, Jetty, or Undertow directly into your application, making deployment simpler.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;cb69&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Spring Boot CLI:&lt;/strong&gt; A command-line interface that further simplifies development tasks.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;02ab&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Spring Initializr:&lt;/strong&gt; A web-based tool for quickly bootstrapping new Spring Boot projects.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;2645&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Use Cases:&lt;/strong&gt; Spring Boot is ideal for building REST APIs, microservices, and any backend component where you need the power and flexibility of the Spring ecosystem.&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;9c2c&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;2. JHipster&lt;/strong&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;52ea&quot;&gt;JHipster takes Spring Boot and combines it with powerful code generation capabilities. It’s a full-stack application generator that helps you create modern web applications with Spring Boot on the backend and popular JavaScript frameworks (Angular, React, or Vue.js) on the front end.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;cde1&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Key Features:&lt;/strong&gt;&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;f001&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Full-stack code generation:&lt;/strong&gt; Generates both backend and frontend code, including authentication, database integration, and basic CRUD (Create, Read, Update, Delete) operations.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;0eae&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Microservices support:&lt;/strong&gt; Can generate applications designed for a microservices architecture.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;25ea&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Blueprint architecture:&lt;/strong&gt; Allows for customization and extension of the generated code.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;63fe&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Use Cases:&lt;/strong&gt; JHipster is perfect for rapidly prototyping full-stack applications, especially when you want to use Spring Boot and a modern JavaScript framework. It’s less ideal for very small, simple projects where the overhead of JHipster might be too much.&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;1b51&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;3. Vaadin&lt;/strong&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;b9bc&quot;&gt;Vaadin is a full-stack Java web framework focused on building rich and interactive web UIs. It offers two main approaches:&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;5da0&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Vaadin Flow:&lt;/strong&gt; Allows you to build UIs entirely in Java, without writing HTML or JavaScript directly. Vaadin handles the rendering on the client-side.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;d4b1&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Hilla:&lt;/strong&gt; A newer approach that combines a Spring Boot backend with a reactive TypeScript frontend.&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;09e5&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Key Features:&lt;/strong&gt;&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;e19d&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Component-based architecture:&lt;/strong&gt; UI elements are represented as reusable Java components.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;f99b&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Server-side rendering (Vaadin Flow):&lt;/strong&gt; UI logic is executed on the server, which can simplify development for Java developers. Hilla uses client-side rendering.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;1b10&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Rich set of UI components:&lt;/strong&gt; Vaadin provides a wide range of pre-built UI components, from simple buttons to complex grids and charts.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;cca0&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Use Cases:&lt;/strong&gt; Vaadin is well-suited for building complex, data-driven web applications where a rich user interface is essential. It’s a good choice for Java developers who prefer a Java-centric approach to UI development.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;74ca&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;h3&gt;Core Focus, Strength and Weaknesses&lt;/h3&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;95c1&quot;&gt;&lt;strong class=&quot;markup--strong markup--h4-strong&quot;&gt;1. Spring&amp;nbsp;Boot&lt;/strong&gt;&lt;/h4&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;e21f&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Core Focus:&lt;/strong&gt; This is the foundation. Spring Boot simplifies building standalone, production-ready Spring applications. It handles a lot of the boilerplate configuration, making it easier to get a Spring project up and running quickly. Think of it as the engine of your application.&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;d50a&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Strengths:&lt;/strong&gt;&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;1461&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Speed:&lt;/strong&gt; Rapid development with auto-configuration and embedded servers.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;49be&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Flexibility:&lt;/strong&gt; Works well with various databases, cloud platforms, and other technologies.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;bc96&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Mature and Widely Used:&lt;/strong&gt; Huge community support, extensive documentation, and a vast ecosystem of libraries.&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;20d7&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Weaknesses:&lt;/strong&gt;&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;0bc8&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Not a Full-Stack Solution:&lt;/strong&gt; You’ll need to choose and integrate your own frontend technologies (like React, Angular, or Vue.js).&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;bc39&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Learning Curve:&lt;/strong&gt; While Spring Boot simplifies things, understanding the underlying Spring framework can still take time.&lt;/li&gt;&lt;/ul&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;d3de&quot;&gt;2. JHipster&lt;/h4&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;dc0d&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Core Focus:&lt;/strong&gt; A code generator that helps you quickly create full-stack web applications with Spring Boot on the backend and popular JavaScript frameworks (Angular, React, Vue.js) on the frontend.&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;abea&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Strengths:&lt;/strong&gt;&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;1ff4&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Rapid Prototyping:&lt;/strong&gt; Generates a complete application with authentication, database integration, and basic CRUD operations in minutes.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;0086&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Best Practices:&lt;/strong&gt; Uses well-established technologies and patterns.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;f7e1&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Microservices Support:&lt;/strong&gt; Can generate applications designed for a microservices architecture.&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;c163&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Weaknesses:&lt;/strong&gt;&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;e4d9&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Complexity:&lt;/strong&gt; Can generate a lot of code, which might be overwhelming for smaller projects or developers new to the technologies.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;016a&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Less Control:&lt;/strong&gt; You have less control over the initial setup compared to building everything from scratch.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;c100&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Maintenance:&lt;/strong&gt; Upgrading generated applications can be challenging.&lt;/li&gt;&lt;/ul&gt;&lt;h4 class=&quot;graf graf--h4&quot; name=&quot;cffc&quot;&gt;3. Vaadin&lt;/h4&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;4fd6&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Core Focus:&lt;/strong&gt; A full-stack Java web framework that lets you build rich, interactive web UIs with Java. It offers two main approaches:&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;98f0&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Vaadin Flow:&lt;/strong&gt; Build UIs entirely in Java, without writing HTML or JavaScript.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;df3f&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Hilla:&lt;/strong&gt; Combines a Spring Boot backend with a reactive TypeScript frontend.&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;aa43&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Strengths:&lt;/strong&gt;&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;667c&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Productivity:&lt;/strong&gt; Vaadin Flow’s Java-centric approach can be very efficient for Java developers.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;87a8&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Type Safety:&lt;/strong&gt; Strong type safety throughout the development process.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;13a7&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Excellent UI Components:&lt;/strong&gt; Provides a wide range of pre-built UI components.&lt;/li&gt;&lt;/ul&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;d2ac&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Weaknesses:&lt;/strong&gt;&lt;/p&gt;&lt;ul class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;bfaa&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Steeper Learning Curve:&lt;/strong&gt; Vaadin has its own way of doing things, so there’s a learning curve.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;8239&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Less Flexibility:&lt;/strong&gt; Compared to Spring Boot, Vaadin is more opinionated about how you structure your application.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;e7ca&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Performance:&lt;/strong&gt; Vaadin Flow’s server-side rendering can sometimes lead to performance issues in complex applications.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;/div&gt;&lt;div&gt;&lt;p data-sourcepos=&quot;26:1-26:11&quot;&gt;&lt;/p&gt;&lt;/div&gt;&lt;span&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/span&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;In summary&lt;/h3&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEi-gYa4vfC0VyVJlSXT7BFu6snwlsFKoQdg5DoowG8l59Ls6a3LerXU0gEVZKNjAyfCoS5Ih_ebsFQFJttXSFE1exbZoeNYV5z_xrgNIQeLCxO7aYPbLJuupIBF5-IpGazc_YBTW1L2a-81Z_8hqrMyQcZ3XlbC8QWG-6PlHsucWjC8ooy69qQRu27WQNxF&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;620&quot; data-original-width=&quot;1442&quot; height=&quot;276&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEi-gYa4vfC0VyVJlSXT7BFu6snwlsFKoQdg5DoowG8l59Ls6a3LerXU0gEVZKNjAyfCoS5Ih_ebsFQFJttXSFE1exbZoeNYV5z_xrgNIQeLCxO7aYPbLJuupIBF5-IpGazc_YBTW1L2a-81Z_8hqrMyQcZ3XlbC8QWG-6PlHsucWjC8ooy69qQRu27WQNxF=w640-h276&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span&gt;&lt;br /&gt;&lt;!--more--&gt;&lt;br /&gt;&lt;/span&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;span&gt;Conclusion&lt;/span&gt;&lt;/h3&gt;&lt;div&gt;&lt;ul data-sourcepos=&quot;3:1-8:0&quot;&gt;&lt;li data-sourcepos=&quot;3:1-4:0&quot;&gt;&lt;p data-sourcepos=&quot;3:3-3:365&quot;&gt;&lt;strong&gt;Choose Spring Boot if:&lt;/strong&gt; You need a powerful and flexible backend for your Java application and want to choose your frontend technology independently.  It&#39;s the foundation for many modern Java applications, especially microservices and REST APIs.  It&#39;s a good starting point if you&#39;re comfortable building the frontend yourself or have a separate frontend team.&lt;/p&gt;
&lt;/li&gt;
&lt;li data-sourcepos=&quot;5:1-6:0&quot;&gt;
&lt;p data-sourcepos=&quot;5:3-5:334&quot;&gt;&lt;strong&gt;Choose JHipster if:&lt;/strong&gt; You want to rapidly prototype a full-stack web application with Spring Boot on the backend and a modern JavaScript framework (Angular, React, or Vue.js) on the frontend.  It&#39;s excellent for quickly getting a complete application up and running, but be aware of the potential complexity of the generated code.&lt;/p&gt;
&lt;/li&gt;
&lt;li data-sourcepos=&quot;7:1-8:0&quot;&gt;
&lt;p data-sourcepos=&quot;7:3-7:326&quot;&gt;&lt;strong&gt;Choose Vaadin if:&lt;/strong&gt; You&#39;re a Java developer who prefers building user interfaces primarily in Java (Vaadin Flow) or with a modern TypeScript frontend (Hilla) and want a full-stack framework with a rich set of UI components.  It&#39;s a good choice for data-driven applications where a sophisticated user interface is critical.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;p data-sourcepos=&quot;9:1-9:203&quot;&gt;In short: Spring Boot is the engine, JHipster is the car (pre-built, ready to go), and Vaadin is the specialized vehicle (designed for specific UI needs).  Choose the one that best matches your journey.&lt;/p&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/3706363152385457096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/3706363152385457096' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/3706363152385457096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/3706363152385457096'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/02/jhipster-vs-vaadin-vs-spring-boot.html' title='JHipster vs Vaadin vs Spring Boot - Choosing your framework'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiR9iJavy_Frq-iYGVIqpiE_2a1SlzN-xV-TX3h7clTiOSzy-GmHHzZrDJfeXulGPWX2FA37KhxsWJu-CgfWCZPEKGu7iVOiY9AS0qZ6VZhqczo7ThMy8qjY5O68LsJ67TAYGt77LbB6ASepsQWcNsnr7uilx29WYODMcLgGKdbVWubN70mizoSc8bxVxNT/s72-w640-h366-c/Designer%20(14).jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-6404785849227589430</id><published>2025-02-05T07:14:00.000-08:00</published><updated>2025-02-05T07:14:03.444-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AGI"/><category scheme="http://www.blogger.com/atom/ns#" term="Artificial Intelligent"/><category scheme="http://www.blogger.com/atom/ns#" term="Content Writer"/><category scheme="http://www.blogger.com/atom/ns#" term="Generative AI"/><title type='text'>ChatGPT vs Gemini vs Copilot vs DeepSeek vs Perplexity vs Qwen - A challenge on content writeup</title><content type='html'>&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeex3GvFUBSfEszup1vrDToO8uByyTveogSd028SnCWpAbW2x3HkMeT_pTPsh3oef_2pgvQfoYCxOAOA93fxBTRok9KJ8ys6pb9YTGXyfPiOCT1CumobO_d1KeVR4PDN13pDLWaIIObU0SCGydAW4qi1BK4JIw8Avfv5iiz858HVdiLway6q-7njbTrhYX/s1792/Designer%20(11).jpeg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1792&quot; height=&quot;366&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeex3GvFUBSfEszup1vrDToO8uByyTveogSd028SnCWpAbW2x3HkMeT_pTPsh3oef_2pgvQfoYCxOAOA93fxBTRok9KJ8ys6pb9YTGXyfPiOCT1CumobO_d1KeVR4PDN13pDLWaIIObU0SCGydAW4qi1BK4JIw8Avfv5iiz858HVdiLway6q-7njbTrhYX/w640-h366/Designer%20(11).jpeg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;I requested ChatGPT, Gemini, Copilot, DeepSeek, Perplexity, and Qwen to revamp my paragraph below and provide relevant articles as references.&amp;nbsp;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;background-color: #f3f3f3;&quot;&gt;Feedback Methods focus on incorporating user feedback and real-world experience into the validation and verification process. This involves continuous monitoring of deployed AI systems, gathering user feedback, and using this information to improve the system&#39;s performance and address any emerging ethical concerns. A/B testing is a common example, where different versions of an AI system are deployed to different user groups, and their performance and user satisfaction are compared. This iterative process allows for continuous improvement and adaptation of the AI system to real-world conditions. Another example is the use of post-market surveillance for medical AI devices, where data on the device’s performance in clinical practice is continuously collected and analysed to identify potential safety or efficacy issues.&lt;/span&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;The text above was the input for all 6 GenAI to respond to. Let us see the outcome of it.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;1. ChatGPT&lt;/h3&gt;&lt;div&gt;Feedback methods play a critical role in the validation and verification of AI systems by integrating real-world user interactions and experiences. These methods ensure AI models continuously improve, remain aligned with ethical principles, and mitigate risks related to bias, safety, and transparency.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;One key approach is continuous monitoring of deployed AI systems, where real-time user feedback is collected to assess system reliability, fairness, and unintended consequences. This process enables adaptive AI governance, allowing iterative refinements that improve model robustness and address emerging ethical concerns, such as discrimination in decision-making systems.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A/B testing is a widely used validation method where different AI system versions are deployed to diverse user groups, and performance metrics, user satisfaction, and fairness outcomes are compared. For instance, AI-driven hiring platforms can use A/B testing to ensure that model updates do not introduce bias against specific demographic groups.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Another essential application is post-market surveillance for medical AI systems, where real-world clinical data is analyzed to detect safety or efficacy issues. Regulatory bodies like the FDA emphasize continuous performance evaluation for AI-powered diagnostic tools to prevent harmful medical misdiagnoses.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Additionally, human-in-the-loop (HITL) systems enhance AI validation by allowing expert oversight, enabling human evaluators to intervene when the system&#39;s decisions are ambiguous or ethically sensitive. This is particularly crucial in AI systems deployed for judicial sentencing, autonomous vehicles, and healthcare diagnostics, where incorrect predictions can have severe consequences.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The adoption of explainable AI (XAI) techniques in feedback-based verification also ensures transparency, helping regulators and users understand AI decision-making processes. These methods align with ethical AI principles by fostering accountability, fairness, and trust in AI applications.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Recent Research and Publications (2015–2024)&lt;/h4&gt;&lt;div&gt;Below are relevant and recent academic publications that discuss feedback methods in AI validation and verification:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;(2024) - &quot;Ethical AI Governance through Continuous User Feedback: A Framework for Adaptive AI Systems&quot; – [Journal of AI Research]&lt;/li&gt;&lt;li&gt;(2023) - &quot;Post-Market Surveillance in AI-Powered Healthcare: Challenges and Solutions&quot; – [IEEE Transactions on AI in Medicine]&lt;/li&gt;&lt;li&gt;(2023) - &quot;A/B Testing for Fairness in AI Systems: Addressing Bias in Algorithmic Decision-Making&quot; – [ACM Conference on Fairness, Accountability, and Transparency (FAccT)]&lt;/li&gt;&lt;li&gt;(2022) - &quot;Human-in-the-Loop AI: Enhancing Verification and Trustworthiness in Critical Applications&quot; – [Nature Machine Intelligence]&lt;/li&gt;&lt;li&gt;(2021) - &quot;The Role of Explainable AI in Ethical AI Validation and Continuous Improvement&quot; – [AI &amp;amp; Society Journal]&lt;/li&gt;&lt;li&gt;(2020) - &quot;AI Validation Frameworks for Real-World Deployment: Integrating Feedback for Fairness and Robustness&quot; – [MIT AI Ethics Lab Report]&lt;/li&gt;&lt;li&gt;(2019) - &quot;Real-Time Monitoring of AI Systems: A Review of Feedback-Based Verification Techniques&quot; – [Journal of Automated Reasoning]&lt;/li&gt;&lt;li&gt;(2018) - &quot;Post-Deployment AI Monitoring: Regulatory and Ethical Considerations&quot; – [Harvard AI Review]&lt;/li&gt;&lt;li&gt;(2017) - &quot;Human Oversight in AI Verification: Case Studies in Healthcare and Autonomous Systems&quot; – [Springer AI Governance Handbook]&lt;/li&gt;&lt;li&gt;(2015) - &quot;Ethical Challenges in AI Validation: The Need for Continuous Feedback Loops&quot; – [Oxford Journal of AI &amp;amp; Law]&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;span&gt;&lt;/span&gt;&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&amp;nbsp;2. Gemini&lt;/h3&gt;&lt;p&gt;&lt;/p&gt;&lt;div&gt;&lt;div&gt;&quot;Feedback Methods for AI Verification and Validation emphasize the importance of continuous monitoring and learning in ensuring ethical and reliable AI systems. By actively incorporating user feedback and real-world operational data, these methods enable the identification and mitigation of unexpected biases, safety issues, and ethical concerns that may arise during deployment.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Key Examples:&lt;/h4&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;A/B Testing: This widely used technique involves deploying different versions of an AI system to distinct user groups, allowing for direct comparison of their performance, user experience, and ethical implications.&lt;/li&gt;&lt;li&gt;Relevant Article: &quot;A/B Testing in Online Control Experiments&quot; by Ron Kohavi, Diane Tang, and Ya Xu (2009) - Encyclopedia of Database Systems&lt;/li&gt;&lt;li&gt;User-Centered Design: This approach prioritizes user needs and feedback throughout the AI development lifecycle. User involvement in design, testing, and evaluation helps ensure that AI systems are usable, accessible, and aligned with user expectations.&lt;/li&gt;&lt;/ol&gt;&lt;/blockquote&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Relevant Article: &quot;The Design of Everyday Things&quot; by Donald Norman (2013) - Basic Books (While not strictly about AI, this seminal work on user-centered design provides foundational principles applicable to AI systems.)&lt;/li&gt;&lt;li&gt;Post-Market Surveillance: This regulatory approach, commonly used in the medical device industry, mandates continuous monitoring of AI systems after deployment to detect and address potential safety or efficacy issues.&lt;/li&gt;&lt;li&gt;Relevant Article: &quot;Post-Market Surveillance of Medical Devices: A Review&quot; by David M. Eddy (2013) - Health Affairs&lt;/li&gt;&lt;li&gt;Explainable AI (XAI) for User Feedback: XAI techniques can help users understand the reasoning behind AI decisions, enabling them to provide more informed and meaningful feedback.&lt;/li&gt;&lt;li&gt;Relevant Article: &quot;Interpretable Machine Learning&quot; by Christoph Molnar (2020) - Leanpub&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Ethical Considerations:&lt;/h4&gt;&lt;div&gt;Bias Detection and Mitigation: User feedback can help identify and mitigate biases that may emerge in real-world scenarios, ensuring fair and equitable treatment for all users.&lt;/div&gt;&lt;div&gt;Transparency and Accountability: Feedback mechanisms can enhance transparency by providing users with insights into AI decision-making and demonstrating accountability for system performance.&lt;/div&gt;&lt;div&gt;User Trust and Confidence: By actively incorporating user feedback, developers can build trust and confidence in AI systems, encouraging wider adoption and responsible use.&lt;/div&gt;&lt;div&gt;Conclusion:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Feedback methods are essential for the ethical and responsible development and deployment of AI systems. By continuously monitoring, learning, and adapting based on user feedback and real-world data, we can strive to create AI systems that are safe, reliable, and beneficial for all.&quot;&lt;span&gt;&lt;!--more--&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;h3&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;div style=&quot;text-align: left;&quot;&gt;3. Copilot&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Feedback Methods focus on incorporating user feedback and real-world experience into the validation and verification process. This involves continuous monitoring of deployed AI systems, gathering user feedback, and using this information to improve the system&#39;s performance and address any emerging ethical concerns. A/B testing is a common example, where different versions of an AI system are deployed to different user groups, and their performance and user satisfaction are compared. This iterative process allows for continuous improvement and adaptation of the AI system to real-world conditions. Another example is the use of post-market surveillance for medical AI devices, where data on the device’s performance in clinical practice is continuously collected and analyzed to identify potential safety or efficacy issues.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Ethical principles in AI verification and validation are crucial to ensure fairness, accountability, and transparency. Incorporating ethical considerations into the feedback loop helps mitigate risks associated with bias, discrimination, and adversarial attacks. Continuous monitoring and user feedback also play a vital role in maintaining the trustworthiness of AI systems.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/h3&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span&gt;Recent Articles and Publications:&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;2024:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Ethical AI: Feedback Loops for Fairness and Accountability&quot; - Journal of AI Ethics&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Continuous Monitoring and User Feedback in AI Systems&quot; - AI Magazine&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;2023:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;A/B Testing for Ethical AI Development&quot; - Proceedings of the ACM on Human-Computer Interaction&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Post-Market Surveillance in Medical AI Devices&quot; - Journal of Medical Ethics&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;2022:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Incorporating Ethical Principles in AI Verification&quot; - Ethics and Information Technology&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Feedback Methods for Bias Mitigation in AI&quot; - Journal of Responsible Technology&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;2021:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Real-World Experience and AI Validation&quot; - AI &amp;amp; Society&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Ethical Considerations in AI Feedback Loops&quot; - Journal of Business Ethics&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;2020:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Ensuring Fairness in AI Systems through User Feedback&quot; - AI &amp;amp; Society&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Continuous Improvement of AI Systems: Ethical Perspectives&quot; - Journal of Information, Communication &amp;amp; Ethics in Society.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;span&gt;&lt;!--more--&gt;&lt;/span&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;4. DeepSeek&lt;/h3&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Feedback methods are critical in ensuring that AI systems align with ethical principles, remain transparent, and adapt to real-world conditions. These methods focus on incorporating user feedback and real-world data into the validation and verification process, enabling continuous improvement and addressing emerging ethical concerns. Below is an enhanced explanation of feedback methods, along with a curated list of recent and relevant publications.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Key Feedback Methods:&lt;/h4&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Continuous Monitoring and User Feedback:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;&lt;div&gt;Deployed AI systems must be continuously monitored to ensure they perform as intended and adhere to ethical guidelines. User feedback is collected to identify biases, unintended consequences, or performance gaps.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Example: Social media platforms use user reports to flag harmful content generated or amplified by AI algorithms.&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;A/B Testing:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;A/B testing involves deploying different versions of an AI system to distinct user groups and comparing their performance, user satisfaction, and ethical outcomes. This helps identify the most effective and ethical version.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Example: E-commerce platforms use A/B testing to evaluate recommendation algorithms for fairness and user engagement.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Post-Market Surveillance:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;For AI systems in high-stakes domains like healthcare, post-market surveillance ensures ongoing safety and efficacy. Data from real-world use is analyzed to detect potential risks or ethical issues.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Example: Medical AI devices, such as diagnostic tools, are monitored for accuracy and bias in diverse clinical settings.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Iterative Improvement:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Feedback loops enable iterative updates to AI systems, ensuring they evolve to meet ethical standards and user needs. This process involves retraining models, refining algorithms, and addressing identified issues.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Example: Autonomous vehicles use real-world driving data to improve safety and decision-making algorithms.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Stakeholder Engagement:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Involving diverse stakeholders (e.g., users, ethicists, domain experts) in the feedback process ensures that AI systems are evaluated from multiple perspectives, reducing the risk of harm or exclusion.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Example: Public consultations for AI-powered public services ensure inclusivity and fairness.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span&gt;Ethical Principles Addressed:&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Transparency: Feedback methods make AI decision-making processes more understandable and accountable.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Fairness: Continuous monitoring helps identify and mitigate biases in AI systems.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Safety: Post-market surveillance ensures AI systems remain safe and effective in real-world applications.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Accountability: Iterative improvement processes hold developers responsible for addressing ethical concerns.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span&gt;Curated List of Recent Publications (2018–2023)&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Ethical AI in Practice: A Framework for Continuous Monitoring and Improvement&quot;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Authors: Jobin, A., Ienca, M., &amp;amp; Vayena, E.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Journal: Nature Machine Intelligence&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Year: 2023&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Link: DOI&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Summary: Proposes a framework for integrating ethical principles into AI lifecycle management through continuous monitoring and feedback.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;A/B Testing for Fairness in AI Systems&quot;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Authors: Holstein, K., Wortman Vaughan, J., &amp;amp; Wallach, H.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Conference: ACM Conference on Fairness, Accountability, and Transparency (FAccT)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Year: 2022&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Link: DOI&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Summary: Explores the use of A/B testing to evaluate and improve fairness in AI systems.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Post-Market Surveillance for AI-Based Medical Devices: Challenges and Opportunities&quot;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Authors: Gerke, S., Babic, B., &amp;amp; Cohen, I. G.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Journal: Journal of Law, Medicine &amp;amp; Ethics&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Year: 2021&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Link: DOI&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Summary: Discusses the importance of post-market surveillance for ensuring the safety and efficacy of AI medical devices.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Iterative Improvement in AI Systems: A Case Study on Autonomous Vehicles&quot;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Authors: Amodei, D., &amp;amp; Hernandez, D.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Conference: NeurIPS Workshop on AI for Social Good&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Year: 2020&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Link: DOI&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Summary: Examines how iterative feedback loops improve the safety and performance of autonomous vehicles.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Stakeholder Engagement in AI Development: A Pathway to Ethical AI&quot;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Authors: Whittlestone, J., Nyrup, R., &amp;amp; Alexandrova, A.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Journal: AI &amp;amp; Society&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Year: 2019&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Link: DOI&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Summary: Highlights the role of stakeholder engagement in addressing ethical challenges in AI development.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&quot;Real-World Feedback for AI Systems: Lessons from Social Media Platforms&quot;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Authors: Gillespie, T., &amp;amp; Seaver, N.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Journal: Big Data &amp;amp; Society&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Year: 2018&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Link: DOI&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Summary: Analyzes how social media platforms use real-world feedback to refine AI algorithms and address ethical concerns.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;&lt;div&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Feedback methods are indispensable for ensuring AI systems remain ethical, safe, and effective in real-world applications. By leveraging continuous monitoring, A/B testing, post-market surveillance, and stakeholder engagement, developers can address ethical challenges and improve AI systems iteratively. The listed publications provide valuable insights and frameworks for implementing these methods effectively.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;span&gt;&lt;!--more--&gt;&lt;/span&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;5. Perplexity&lt;/h3&gt;&lt;div style=&quot;text-align: left;&quot;&gt;The validation and verification of AI systems against ethical principles is a critical area of focus, especially as AI technologies continue to evolve and integrate into various sectors. Effective feedback methods play a vital role in this process, ensuring that user experiences and real-world applications inform ongoing improvements. Below is an overview of significant statements regarding AI ethics, along with a curated list of relevant articles and publications from the last decade.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;Key Statements on AI Validation and Ethics&lt;/span&gt;&lt;/h4&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;User Feedback Integration: Continuous monitoring of AI systems allows for the collection of user feedback, which is essential for addressing ethical concerns and improving system performance. This iterative process enhances adaptability to real-world conditions.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;A/B Testing: This method is commonly used to compare different versions of AI systems, providing insights into user satisfaction and performance metrics. It exemplifies how empirical data can guide ethical considerations in AI deployment.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;Post-Market Surveillance: Particularly in medical AI applications, ongoing data collection and analysis are crucial for identifying safety or efficacy issues, thereby reinforcing accountability and ethical standards.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;Guidelines for Ethical AI Use: Recent guidelines emphasize the need for transparency, fairness, and accountability in AI development. They advocate for clear definitions of generative AI and consumer rights related to data usage.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;Relevant Articles and Publications&lt;/span&gt;&lt;/h4&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;National Guidelines on Artificial Intelligence Governance and Ethics (2024)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;This document outlines responsibilities for stakeholders in ensuring ethical AI practices, including consumer rights and developer obligations to mitigate bias and ensure transparency &lt;a href=&quot;https://www.rahmatlim.com/perspectives/articles/29210/mykh-national-guidelines-on-artificial-intelligence-governance-and-ethics-key-principles&quot;&gt;1&lt;/a&gt;.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;Ethical Use of Artificial Intelligence for Scientific Writing (2024)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;This article discusses the implications of generative AI in scientific writing, emphasizing the need for accountability and ethical standards to prevent misuse &lt;a href=&quot;https://pmc.ncbi.nlm.nih.gov/articles/PMC11015711/&quot;&gt;2&lt;/a&gt;.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;National Guidelines on AI Governance (2024)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;These guidelines aim to raise awareness about responsible AI use among consumers and outline rights that protect users from potential harms associated with AI technologies &lt;a href=&quot;https://cdo.unimas.my/media/attachments/2024/09/23/national-guidelines-of-aige.pdf&quot;&gt;3&lt;/a&gt;.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;Clarifying Ethical Dilemmas in Using AI Tools in Higher Education (2023)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;This publication explores the ethical considerations surrounding the use of AI tools in educational settings, addressing common misconceptions and promoting responsible usage &lt;a href=&quot;https://www.researchgate.net/publication/382308049_Clarifying_Ethical_Dilemmas_in_Sharpening_Students&quot;&gt;4&lt;/a&gt;.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;The Ethics of Artificial Intelligence: Issues and Initiatives (2020)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;A comprehensive study that examines various ethical implications associated with AI development, focusing on accountability, transparency, and human rights &lt;a href=&quot;https://www.europarl.europa.eu/RegData/etudes/STUD/2020/634452/EPRS_STU(2020)634452_EN.pdf&quot;&gt;5&lt;/a&gt;.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;An Initial Review of Publicly Available AI Ethics Tools (2020)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;This review assesses existing tools and methods aimed at translating ethical principles into actionable practices within the field of AI &lt;a href=&quot;https://www.researchgate.net/publication/337924430_From_What_to_How_An_Initial_Review_of_Publicly_Available_AI_Ethics_Tools_Methods_and_Research_to_Translate_Principles_into_Practices&quot;&gt;6&lt;/a&gt;.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;Ethical Considerations for Validation of AI Capabilities (2020)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;This paper highlights the importance of incorporating ethical considerations into the validation processes for AI capabilities, advocating for inclusivity and fairness &lt;a href=&quot;https://www.linkedin.com/pulse/ethical-considerations-validation-ai-capabilities-andrew-stephens-dzy0c&quot;&gt;7&lt;/a&gt;.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;UNESCO Recommendation on the Ethics of Artificial Intelligence (2021)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-size: small; font-weight: normal;&quot;&gt;UNESCO&#39;s global standard on AI ethics sets forth principles aimed at guiding nations in developing ethical frameworks for AI technologies &lt;a href=&quot;https://www.unesco.org/en/artificial-intelligence/recommendation-ethics&quot;&gt;8&lt;/a&gt;.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;span&gt;&lt;!--more--&gt;&lt;/span&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&amp;nbsp;6. Qwen&lt;/h3&gt;Feedback Methods play a pivotal role in ensuring that AI systems are not only technically robust but also ethically aligned with societal values. These methods emphasize the integration of user feedback and real-world operational data into the validation and verification processes, allowing for dynamic adjustments to AI systems over time. Continuous monitoring of deployed AI systems is essential to detect any deviations from expected performance or ethical standards. By gathering user feedback, organizations can identify unintended consequences, biases, or ethical concerns that may arise during real-world deployment.&lt;br /&gt;&lt;br /&gt;One widely adopted technique is A/B testing , where different versions of an AI system are deployed to distinct user groups. This approach enables developers to compare performance metrics, such as accuracy, fairness, and user satisfaction, while also assessing potential ethical implications. For instance, if one version disproportionately disadvantages a particular demographic group, this feedback loop allows for corrective measures before broader deployment.&lt;br /&gt;&lt;br /&gt;In high-stakes domains like healthcare, post-market surveillance is critical for medical AI devices. Once these systems are deployed in clinical settings, their performance must be continuously monitored to ensure safety, efficacy, and compliance with ethical principles. Real-world data collected through post-market surveillance can reveal issues that were not apparent during controlled testing phases, such as algorithmic bias or unanticipated side effects. This ongoing evaluation process ensures that AI systems remain reliable and trustworthy throughout their lifecycle.&lt;br /&gt;&lt;br /&gt;Moreover, feedback mechanisms should incorporate explainability and transparency to build trust among users. Users need to understand how decisions are made by AI systems and have avenues to report concerns or request clarifications. Tools like Human-in-the-Loop (HITL) frameworks allow human oversight at critical decision points, ensuring that AI outputs align with ethical guidelines and stakeholder expectations.&lt;br /&gt;&lt;br /&gt;To further enhance the credibility of feedback methods, organizations can adopt third-party audits and ethical impact assessments . Independent reviewers can evaluate whether AI systems adhere to established ethical principles, such as fairness, accountability, and privacy. Such external validation strengthens public confidence in AI technologies and fosters responsible innovation.&lt;br /&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;List of Relevant Articles, Journals, and Publications (Not Older Than 10 Years):&lt;/h4&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&quot;Continuous Monitoring and Feedback Loops in AI Systems: A Framework for Ethical Validation&quot;&lt;br /&gt;Journal of Artificial Intelligence Research (2023)Explores the role of continuous feedback loops in maintaining ethical alignment in AI systems.&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&quot;Post-Market Surveillance for Medical AI Devices: Challenges and Opportunities&quot;&lt;br /&gt;Nature Medicine (2022)Discusses the importance of post-deployment monitoring in healthcare AI applications.&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&quot;Ethics of Algorithmic Decision-Making: Lessons from A/B Testing Practices&quot;&lt;br /&gt;AI Ethics Journal (2021)Analyzes the ethical considerations involved in A/B testing for AI systems.&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&quot;Explainable AI and User Trust: Bridging the Gap Between Technology and Society&quot;&lt;br /&gt;IEEE Transactions on Technology and Society (2020)Examines the relationship between explainability, transparency, and user trust in AI.&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&quot;Third-Party Audits for AI Systems: Ensuring Accountability and Fairness&quot;&lt;br /&gt;Harvard Journal of Law &amp;amp; Technology (2019)Proposes third-party auditing as a mechanism for verifying ethical compliance in AI.&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&quot;Human-in-the-Loop Frameworks for Responsible AI Deployment&quot;&lt;br /&gt;ACM Computing Surveys (2018)Investigates the effectiveness of HITL approaches in mitigating risks associated with autonomous systems.&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&quot;Dynamic Adaptation of AI Systems Through Real-Time Feedback Mechanisms&quot;&lt;br /&gt;Frontiers in Artificial Intelligence (2017)Highlights the technical and ethical benefits of incorporating real-time feedback into AI design.&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&quot;Bias Detection and Mitigation in Deployed AI Systems Using Post-Market Data&quot;&lt;br /&gt;Proceedings of the AAAI Conference on Artificial Intelligence (2016)Focuses on leveraging post-deployment data to address algorithmic bias.&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&quot;The Role of Continuous Learning in Ethical AI Development&quot;&lt;br /&gt;MIT Technology Review (2015)Argues for iterative learning cycles as a means to improve both performance and ethics in AI.&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&quot;Validating AI Systems Against Ethical Principles: A Comprehensive Approach&quot;&lt;br /&gt;AI &amp;amp; Society (2014)Provides a holistic framework for validating AI systems against ethical benchmarks.&lt;/blockquote&gt;&lt;span&gt;&lt;!--more--&gt;&lt;/span&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Winner?&amp;nbsp;&lt;/h3&gt;&lt;p&gt;So, which one is the winner? I&#39;ll come back with further in-depth discussion including its model, dataset, algorithm, framework, and accuracy of the data it provided. Meanwhile, which one do you like more?&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/6404785849227589430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/6404785849227589430' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/6404785849227589430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/6404785849227589430'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/02/chatgpt-vs-gemini-vs-copilot-vs.html' title='ChatGPT vs Gemini vs Copilot vs DeepSeek vs Perplexity vs Qwen - A challenge on content writeup'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeex3GvFUBSfEszup1vrDToO8uByyTveogSd028SnCWpAbW2x3HkMeT_pTPsh3oef_2pgvQfoYCxOAOA93fxBTRok9KJ8ys6pb9YTGXyfPiOCT1CumobO_d1KeVR4PDN13pDLWaIIObU0SCGydAW4qi1BK4JIw8Avfv5iiz858HVdiLway6q-7njbTrhYX/s72-w640-h366-c/Designer%20(11).jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-3885912492238604781</id><published>2025-02-05T05:32:00.000-08:00</published><updated>2025-02-05T05:32:46.302-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AI Ethics"/><category scheme="http://www.blogger.com/atom/ns#" term="Artificial Intelligent"/><category scheme="http://www.blogger.com/atom/ns#" term="Formal Methods"/><category scheme="http://www.blogger.com/atom/ns#" term="Static Analysis"/><title type='text'>Formal Methods Techniques in AI Verification</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHL-58PLEvkuhA_VEIBWGeARflwOwsfRd5FMMRLUCylFczc9T1cLFiF8xHa2VVx_H1jIVvB4-EfniqF54FH5lf5JyO-K6363NdRt5O3RejLoCzIAVTFcZF7LPkzmLGy1krbJgUj-CIkrksqI4cfw5R_BoJLikkOEzLpawWCvR-mj3DM-wb7g3LV4jKSy3-/s1024/Designer%20(10).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHL-58PLEvkuhA_VEIBWGeARflwOwsfRd5FMMRLUCylFczc9T1cLFiF8xHa2VVx_H1jIVvB4-EfniqF54FH5lf5JyO-K6363NdRt5O3RejLoCzIAVTFcZF7LPkzmLGy1krbJgUj-CIkrksqI4cfw5R_BoJLikkOEzLpawWCvR-mj3DM-wb7g3LV4jKSy3-/w400-h400/Designer%20(10).jpeg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;Formal methods are mathematical techniques used to rigorously verify the correctness, safety, and robustness of AI systems, particularly in high-stakes applications such as autonomous vehicles, medical diagnostics, and aerospace.&amp;nbsp;&lt;/p&gt;&lt;p&gt;When I did my master&#39;s degree 10 years ago, I discussed, evaluated, and qualitatively reviewed some of these techniques within the formal methods. You may search my thesis title &quot;A source code perspective C overflow vulnerabilities exploit taxonomy based on well-defined criteria&quot;&lt;/p&gt;&lt;p&gt;Below is a brief explanation of key techniques within formal methods, along with relevant examples and mathematical formulations simplified to ease the understanding.&lt;/p&gt;&lt;hr /&gt;&lt;h3&gt;&lt;strong&gt;1. Abstract Interpretation&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Definition:&lt;/strong&gt;&lt;br /&gt;Abstract interpretation is a static program analysis technique that approximates program behavior by mapping infinite concrete domains (e.g., real numbers) to a finite abstract domain (e.g., intervals). This technique is used to detect errors such as buffer overflows, division by zero, and numeric instability.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br /&gt;Consider an AI algorithm using floating-point arithmetic. Instead of testing all possible floating-point values, abstract interpretation groups them into intervals. If a neural network&#39;s activation function outputs values in &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mo stretchy=&quot;false&quot;&gt;[&lt;/mo&gt;&lt;mo&gt;−&lt;/mo&gt;&lt;mn&gt;1&lt;/mn&gt;&lt;mo separator=&quot;true&quot;&gt;,&lt;/mo&gt;&lt;mn&gt;1&lt;/mn&gt;&lt;mo stretchy=&quot;false&quot;&gt;]&lt;/mo&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;[-1,1]&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mopen&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mord&quot;&gt;−&lt;/span&gt;&lt;span class=&quot;mord&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;mpunct&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;mspace&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;mclose&quot;&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, the abstract interpretation would ensure no computations exceed this range.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Mathematical Representation:&lt;/strong&gt;&lt;br /&gt;For a program function &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;f&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;f(x)&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;f&lt;/span&gt;&lt;span class=&quot;mopen&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;mclose&quot;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, abstract interpretation defines an abstraction function &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;α&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;\alpha&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;α&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; and a concretization function &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;γ&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;\gamma&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;γ&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;:&lt;/p&gt;&lt;span class=&quot;katex-display&quot;&gt;&lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math display=&quot;block&quot; xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi mathvariant=&quot;normal&quot;&gt;∀&lt;/mi&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo&gt;∈&lt;/mo&gt;&lt;mtext&gt;ConcreteDomain&lt;/mtext&gt;&lt;mo separator=&quot;true&quot;&gt;,&lt;/mo&gt;&lt;mspace width=&quot;1em&quot;&gt;&lt;/mspace&gt;&lt;mi&gt;α&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;f&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;mo&gt;≈&lt;/mo&gt;&lt;mi&gt;f&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;α&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;\forall x \in \text{ConcreteDomain}, \quad \alpha(f(x)) \approx f(\alpha(x))&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;where &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;α&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;\alpha(x)&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;α&lt;/span&gt;&lt;span class=&quot;mopen&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;mclose&quot;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; is the abstract representation, and &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;γ&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;α&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;\gamma(\alpha(x))&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;γ&lt;/span&gt;&lt;span class=&quot;mopen&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;α&lt;/span&gt;&lt;span class=&quot;mopen&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;mclose&quot;&gt;))&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; maps it back to the concrete domain.&lt;/p&gt;&lt;hr /&gt;&lt;h3&gt;&lt;strong&gt;2. Semantic Static Analysis&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Definition:&lt;/strong&gt;&lt;br /&gt;Semantic static analysis inspects a program&#39;s source code without executing it to determine properties such as termination, correctness, and possible runtime errors.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br /&gt;A neural network classifier trained for medical diagnosis should not output probabilities exceeding &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mn&gt;1&lt;/mn&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;1&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord&quot;&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;. Static analysis verifies whether the probability function adheres to:&lt;/p&gt;&lt;span class=&quot;katex-display&quot;&gt;&lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math display=&quot;block&quot; xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mo&gt;∑&lt;/mo&gt;&lt;mi&gt;P&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;y&lt;/mi&gt;&lt;mi mathvariant=&quot;normal&quot;&gt;∣&lt;/mi&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;mo&gt;=&lt;/mo&gt;&lt;mn&gt;1&lt;/mn&gt;&lt;mo separator=&quot;true&quot;&gt;,&lt;/mo&gt;&lt;mspace width=&quot;1em&quot;&gt;&lt;/mspace&gt;&lt;mi mathvariant=&quot;normal&quot;&gt;∀&lt;/mi&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo&gt;∈&lt;/mo&gt;&lt;mtext&gt;InputDomain&lt;/mtext&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;\sum P(y|x) = 1, \quad \forall x \in \text{InputDomain}&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;where &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;P&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;y&lt;/mi&gt;&lt;mi mathvariant=&quot;normal&quot;&gt;∣&lt;/mi&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;P(y|x)&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;P&lt;/span&gt;&lt;span class=&quot;mopen&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;y&lt;/span&gt;&lt;span class=&quot;mord&quot;&gt;∣&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;mclose&quot;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; represents the probability of class &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;y&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;y&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;y&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; given input &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;x&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;x&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;.&lt;/p&gt;&lt;hr /&gt;&lt;h3&gt;&lt;strong&gt;3. Model Checking&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Definition:&lt;/strong&gt;&lt;br /&gt;Model checking systematically explores a system&#39;s state space to ensure it satisfies a given set of formal specifications, typically expressed in temporal logic.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br /&gt;In an autonomous driving system, a model checker can verify whether a car always stops at a red light by checking the Linear Temporal Logic (LTL) formula:&lt;/p&gt;&lt;span class=&quot;katex-display&quot;&gt;&lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math display=&quot;block&quot; xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi mathvariant=&quot;normal&quot;&gt;□&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mtext&gt;RedLight&lt;/mtext&gt;&lt;mo&gt;→&lt;/mo&gt;&lt;mi mathvariant=&quot;normal&quot;&gt;◊&lt;/mi&gt;&lt;mtext&gt;Stop&lt;/mtext&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;\Box (\text{RedLight} \rightarrow \Diamond \text{Stop})&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;which states that if a red light appears, the car must eventually stop.&lt;/p&gt;&lt;hr /&gt;&lt;h3&gt;&lt;strong&gt;4. Proof Assistants&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Definition:&lt;/strong&gt;&lt;br /&gt;Proof assistants are software tools that help construct formal proofs of system correctness by allowing users to define mathematical models and verify logical statements interactively.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br /&gt;A self-driving car’s braking system should ensure that stopping distance does not exceed a threshold &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;msub&gt;&lt;mi&gt;d&lt;/mi&gt;&lt;mtext&gt;safe&lt;/mtext&gt;&lt;/msub&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;d_{\text{safe}}&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord&quot;&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;d&lt;/span&gt;&lt;span class=&quot;msupsub&quot;&gt;&lt;span class=&quot;vlist-t vlist-t2&quot;&gt;&lt;span class=&quot;vlist-r&quot;&gt;&lt;span class=&quot;vlist&quot;&gt;&lt;span class=&quot;pstrut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;sizing reset-size6 size3 mtight&quot;&gt;&lt;span class=&quot;mord mtight&quot;&gt;&lt;span class=&quot;mord text mtight&quot;&gt;&lt;span class=&quot;mord mtight&quot;&gt;safe&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;vlist-s&quot;&gt;​&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;vlist-r&quot;&gt;&lt;span class=&quot;vlist&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;:&lt;/p&gt;&lt;span class=&quot;katex-display&quot;&gt;&lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math display=&quot;block&quot; xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;msub&gt;&lt;mi&gt;d&lt;/mi&gt;&lt;mtext&gt;stop&lt;/mtext&gt;&lt;/msub&gt;&lt;mo&gt;=&lt;/mo&gt;&lt;mfrac&gt;&lt;msup&gt;&lt;mi&gt;v&lt;/mi&gt;&lt;mn&gt;2&lt;/mn&gt;&lt;/msup&gt;&lt;mrow&gt;&lt;mn&gt;2&lt;/mn&gt;&lt;mi&gt;a&lt;/mi&gt;&lt;/mrow&gt;&lt;/mfrac&gt;&lt;mo&gt;≤&lt;/mo&gt;&lt;msub&gt;&lt;mi&gt;d&lt;/mi&gt;&lt;mtext&gt;safe​&lt;/mtext&gt;&lt;/msub&gt;&lt;/mrow&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;where &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;v&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;v&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;v&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; is the vehicle speed and &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;a&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;a&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;a&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; is the braking deceleration. A proof assistant like Coq or Isabelle verifies this inequality.&lt;/p&gt;&lt;hr /&gt;&lt;h3&gt;&lt;strong&gt;5. Deductive Verification&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Definition:&lt;/strong&gt;&lt;br /&gt;Deductive verification formally proves that a system satisfies its specification using logical reasoning. This involves deriving proof obligations that demonstrate correctness.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br /&gt;In an AI-based medical diagnosis system, a deductive verification approach ensures that if input &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;x&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;x&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; is classified as disease-positive, then the treatment &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;T&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;T(x)&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;katex-html&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;T&lt;/span&gt;&lt;span class=&quot;mopen&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mord mathnormal&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;mclose&quot;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; should always be prescribed:&lt;/p&gt;&lt;span class=&quot;katex-display&quot;&gt;&lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math display=&quot;block&quot; xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi mathvariant=&quot;normal&quot;&gt;∀&lt;/mi&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo separator=&quot;true&quot;&gt;,&lt;/mo&gt;&lt;mspace width=&quot;1em&quot;&gt;&lt;/mspace&gt;&lt;mtext&gt;Diagnosis&lt;/mtext&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;mo&gt;=&lt;/mo&gt;&lt;mtext&gt;Positive&lt;/mtext&gt;&lt;mo&gt;⇒&lt;/mo&gt;&lt;mi&gt;T&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;(&lt;/mo&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo stretchy=&quot;false&quot;&gt;)&lt;/mo&gt;&lt;mo mathvariant=&quot;normal&quot;&gt;≠&lt;/mo&gt;&lt;mi mathvariant=&quot;normal&quot;&gt;∅&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;\forall x, \quad \text{Diagnosis}(x) = \text{Positive} \Rightarrow T(x) \neq \emptyset&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;hr /&gt;&lt;h3&gt;&lt;strong&gt;6. Model-Based Testing&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Definition:&lt;/strong&gt;&lt;br /&gt;Model-based testing (MBT) derives test cases from formal models of a system’s expected behavior, ensuring comprehensive test coverage.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br /&gt;For an AI-powered ATM system, a state machine model might specify:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Insert Card → PIN Entry → Transaction → Dispense Cash&lt;/li&gt;&lt;li&gt;Insert Card → PIN Entry → Incorrect PIN → Card Ejection&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Each path is converted into test cases, ensuring all scenarios are tested.&lt;/p&gt;&lt;hr /&gt;&lt;h3&gt;&lt;strong&gt;7. Design by Refinement&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Definition:&lt;/strong&gt;&lt;br /&gt;Design by refinement incrementally develops a system by starting with an abstract specification and progressively introducing more details while maintaining correctness.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br /&gt;For a neural network-based control system, an initial specification may state:&lt;/p&gt;&lt;span class=&quot;katex-display&quot;&gt;&lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math display=&quot;block&quot; xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mtext&gt;Output&lt;/mtext&gt;&lt;mo&gt;∈&lt;/mo&gt;&lt;mo stretchy=&quot;false&quot;&gt;[&lt;/mo&gt;&lt;mn&gt;0&lt;/mn&gt;&lt;mo separator=&quot;true&quot;&gt;,&lt;/mo&gt;&lt;mn&gt;1&lt;/mn&gt;&lt;mo stretchy=&quot;false&quot;&gt;]&lt;/mo&gt;&lt;/mrow&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;As the design is refined, more constraints are added to ensure robustness against adversarial attacks.&lt;/p&gt;&lt;hr /&gt;&lt;h3&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;These formal methods provide robust frameworks for ensuring AI systems behave as expected in critical applications. While abstract interpretation and static analysis focus on pre-runtime validation, model checking, and proof assistants help verify properties at runtime. Deductive verification ensures correctness by logical reasoning, while model-based testing and refinement guide structured system development.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/3885912492238604781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/3885912492238604781' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/3885912492238604781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/3885912492238604781'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/02/formal-methods-techniques-in-ai.html' title='Formal Methods Techniques in AI Verification'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHL-58PLEvkuhA_VEIBWGeARflwOwsfRd5FMMRLUCylFczc9T1cLFiF8xHa2VVx_H1jIVvB4-EfniqF54FH5lf5JyO-K6363NdRt5O3RejLoCzIAVTFcZF7LPkzmLGy1krbJgUj-CIkrksqI4cfw5R_BoJLikkOEzLpawWCvR-mj3DM-wb7g3LV4jKSy3-/s72-w400-h400-c/Designer%20(10).jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-3150676095719319857</id><published>2025-01-18T21:07:00.000-08:00</published><updated>2025-01-18T21:07:00.284-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AI"/><category scheme="http://www.blogger.com/atom/ns#" term="AI Ethics"/><category scheme="http://www.blogger.com/atom/ns#" term="AI Governance and Ethics"/><category scheme="http://www.blogger.com/atom/ns#" term="Assessment"/><category scheme="http://www.blogger.com/atom/ns#" term="Audit"/><category scheme="http://www.blogger.com/atom/ns#" term="System Validation"/><category scheme="http://www.blogger.com/atom/ns#" term="System Verifications"/><title type='text'>Ensuring Robustness in AI Systems: A Multi-Phase Validation Approach</title><content type='html'>&lt;h3 style=&quot;text-align: left;&quot;&gt;Abstract&lt;/h3&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Artificial Intelligence (AI) systems are increasingly integral across various sectors, necessitating rigorous validation to ensure they function as intended with minimal errors. This article delineates a comprehensive, multi-phase validation framework designed to enhance the reliability and accuracy of AI systems. Organizations can mitigate risks associated with AI deployment by implementing structured validation processes, thereby fostering trust and efficacy in AI applications.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Introduction&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhe2J2mzT4I9CMgO9sFjb1fP3hiq6jJXiRlMiKv8ywbpjLL3wjZE4yvmVsnUZcbF9Z6iVQd8Q27lZ3hctnXn6k-L16wI41Fc0p0SQlUYHaMryPr1NKN9WGTINgvBGcOQtuIVGN7fs4uUxqBn57eW3zkBWZxeRRPbqgxI7GveDvMOh3mwsrlagecHNQeLeq/s1024/Designer%20(2).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;409&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhe2J2mzT4I9CMgO9sFjb1fP3hiq6jJXiRlMiKv8ywbpjLL3wjZE4yvmVsnUZcbF9Z6iVQd8Q27lZ3hctnXn6k-L16wI41Fc0p0SQlUYHaMryPr1NKN9WGTINgvBGcOQtuIVGN7fs4uUxqBn57eW3zkBWZxeRRPbqgxI7GveDvMOh3mwsrlagecHNQeLeq/w409-h409/Designer%20(2).jpeg&quot; width=&quot;409&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;The proliferation of AI technologies has transformed industries by automating complex tasks and providing data-driven insights. However, the deployment of AI systems without thorough validation can lead to significant errors, undermining their intended purposes and potentially causing adverse outcomes. Therefore, establishing a robust validation framework is imperative to ensure AI systems operate with high accuracy and reliability.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Phases of AI System Validation&lt;/h3&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Data Validation&lt;/li&gt;&lt;li&gt;Model Training and Validation&lt;/li&gt;&lt;li&gt;Pre-Deployment Validation&lt;/li&gt;&lt;li&gt;Post-Deployment Monitoring and Validation&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Reducing Error Rates in AI Systems&lt;/h3&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Achieving low error rates in AI systems is paramount, especially in critical applications. Studies indicate that acceptable error rates for AI should be significantly lower than those for human performance to foster trust and reliability. For instance, in medical diagnostics, a survey revealed that the acceptable error rate for AI was 6.8%, compared to 11.3% for human practitioners.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;To minimize errors, organizations should implement high-quality data collection, robust validation processes, and advanced algorithms tailored to specific use cases.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: justify;&quot;&gt;Conclusion&lt;/h3&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Implementing a multi-phase validation framework is essential to ensure AI systems serve their intended purposes with minimal errors. By meticulously validating data, rigorously training and testing models, and continuously monitoring performance post-deployment, organizations can enhance the reliability and effectiveness of AI applications. Such structured validation not only mitigates risks but also builds stakeholder confidence in AI technologies.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;References&lt;/h3&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The 5 Stages of Machine Learning Validation (&lt;a href=&quot;https://towardsdatascience.com/the-5-stages-of-machine-learning-validation-162193f8e5db&quot;&gt;https://towardsdatascience.com/the-5-stages-of-machine-learning-validation-162193f8e5db&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;Goodbye Noise, Hello Signal: Data Validation Methods That Work (&lt;a href=&quot;https://www.pecan.ai/blog/data-validation-methods-that-work/?utm_source=chatgpt.com&quot;&gt;https://www.pecan.ai/blog/data-validation-methods-that-work/?utm_source=chatgpt.com&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;Training, validation, and test phases in AI — explained in a way you&#39;ll never forget (&lt;a href=&quot;https://towardsdatascience.com/training-validation-and-test-phases-in-ai-explained-in-a-way-youll-never-forget-744be50154e8&quot;&gt;https://towardsdatascience.com/training-validation-and-test-phases-in-ai-explained-in-a-way-youll-never-forget-744be50154e8&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;Verification and Validation of Systems in Which AI is a Key Element (&lt;a href=&quot;https://sebokwiki.org/wiki/Verification_and_Validation_of_Systems_in_Which_AI_is_a_Key_Element?utm_source=chatgpt.com&quot;&gt;https://sebokwiki.org/wiki/Verification_and_Validation_of_Systems_in_Which_AI_is_a_Key_Element?utm_source=chatgpt.com&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;Should artificial intelligence have lower acceptable error rates than humans? (&lt;a href=&quot;https://pmc.ncbi.nlm.nih.gov/articles/PMC10301708/?utm_source=chatgpt.com&quot;&gt;https://pmc.ncbi.nlm.nih.gov/articles/PMC10301708/?utm_source=chatgpt.com&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;Understanding Error Rate: A Crucial Guide for Professionals (&lt;a href=&quot;https://helio.app/ux-research/design-metrics/understanding-error-rate-a-crucial-guide-for-professionals/?utm_source=chatgpt.com&quot;&gt;https://helio.app/ux-research/design-metrics/understanding-error-rate-a-crucial-guide-for-professionals/?utm_source=chatgpt.com&lt;/a&gt;)&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/3150676095719319857/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/3150676095719319857' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/3150676095719319857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/3150676095719319857'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/01/ensuring-robustness-in-ai-systems-multi.html' title='Ensuring Robustness in AI Systems: A Multi-Phase Validation Approach'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhe2J2mzT4I9CMgO9sFjb1fP3hiq6jJXiRlMiKv8ywbpjLL3wjZE4yvmVsnUZcbF9Z6iVQd8Q27lZ3hctnXn6k-L16wI41Fc0p0SQlUYHaMryPr1NKN9WGTINgvBGcOQtuIVGN7fs4uUxqBn57eW3zkBWZxeRRPbqgxI7GveDvMOh3mwsrlagecHNQeLeq/s72-w409-h409-c/Designer%20(2).jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-4787720258231048661</id><published>2025-01-17T22:39:00.000-08:00</published><updated>2025-01-17T22:39:37.435-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AI"/><category scheme="http://www.blogger.com/atom/ns#" term="AI Ethics"/><category scheme="http://www.blogger.com/atom/ns#" term="AI Governance and Ethics"/><category scheme="http://www.blogger.com/atom/ns#" term="Audit"/><title type='text'>AI Audit and the Importance of Having Competent Auditor</title><content type='html'>&lt;div style=&quot;text-align: center;&quot;&gt;&lt;blockquote&gt;&quot;However, efforts to meet AI audit service demands, and by extension, any use of audits by public regulators, face three important challenges. First, it remains unclear what the audit object(s) will be – the exact thing that gets audited. Second, despite efforts to build training and credentialing for AI auditors, a sufficient supply of capable AI auditors is lagging. And third, unless markets have clear regulations around auditing, AI audits could suffer from a race to the bottom in audit quality.&quot; - &lt;/blockquote&gt;&lt;a href=&quot;https://www.techpolicy.press/ai-audit-objects-credentialing-and-the-racetothebottom-three-ai-auditing-challenges-and-a-path-forward/?utm_source=chatgpt.com&quot;&gt;https://www.techpolicy.press/ai-audit-objects-credentialing-and-the-racetothebottom-three-ai-auditing-challenges-and-a-path-forward/?utm_source=chatgpt.com&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;hr /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEha1yiBxIsz1cEUJO7ES9p7tZGQa2Parc0xa6UTGYX763Z77m65O5fxo3VFKxbd2N3TInWluLA5H228j0Cs6C6-ahHRrcsRxae9X5vu8XXtYKOikfdjGuMNbZlCoUHmbHTkSytSNJU-ZyBvqeCULuU_LfqnMqrTNjGTxPGqTtFeEb_NcTGAgk4fhPeIAJ_e/s1024/Designer%20(1).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;326&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEha1yiBxIsz1cEUJO7ES9p7tZGQa2Parc0xa6UTGYX763Z77m65O5fxo3VFKxbd2N3TInWluLA5H228j0Cs6C6-ahHRrcsRxae9X5vu8XXtYKOikfdjGuMNbZlCoUHmbHTkSytSNJU-ZyBvqeCULuU_LfqnMqrTNjGTxPGqTtFeEb_NcTGAgk4fhPeIAJ_e/w479-h326/Designer%20(1).jpeg&quot; width=&quot;479&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;
As AI systems become increasingly prevalent, the need for rigorous auditing to ensure their safety and efficacy has never been greater. An article on &lt;a href=&quot;https://www.techpolicy.press/ai-audit-objects-credentialing-and-the-racetothebottom-three-ai-auditing-challenges-and-a-path-forward/&quot;&gt;TechPolicy Press&lt;/a&gt; highlights the critical role of AI auditing in ensuring the safety and effectiveness of AI systems. While I agree that increasing the number of AI auditors is essential, I want to emphasize the equally critical need to ensure their competence and experience.&lt;br /&gt;&lt;br /&gt;We can&#39;t afford to take a lax approach where anyone who passes a certification exam is deemed qualified to audit AI systems. In-depth knowledge and practical experience are paramount. This concern is particularly relevant when considering the practices of some companies that prioritize hiring &quot;bright young talent&quot; with strong communication skills but lack real-world understanding of AI systems to manage their operational cost. These auditors often provide vague or irrelevant recommendations, or misunderstand the situation entirely, leading to wasted time and potentially jeopardizing safety.&lt;br /&gt;&lt;br /&gt;Just like any complex system, AI requires careful auditing by qualified professionals. Competent and experienced auditors can identify and mitigate risks, ultimately safeguarding AI systems and the people they interact with.&lt;div&gt;&lt;br /&gt;&lt;hr /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;The Importance of Auditor Expertise&lt;/h3&gt;AI systems are complex and can have unintended consequences. Auditors need a deep understanding of how these systems work, including their algorithms, data sources, and potential biases. They also need to be able to assess the risks associated with these systems and recommend appropriate mitigation strategies.&lt;br /&gt;&lt;br /&gt;Unfortunately, the current landscape of AI auditing is not without its challenges. There is a lack of standardized training and certification programs, which can lead to inconsistencies in the quality of audits. Additionally, there is a risk of a &quot;race to the bottom&quot; in audit quality, as companies may prioritize cost over quality when selecting auditors.&lt;br /&gt;&lt;hr /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;A Path Forward&lt;/h3&gt;To address these challenges, we need to take several steps. First, we need to develop robust training and certification programs for AI auditors. These programs should be rigorous and cover a wide range of topics, including AI fundamentals, risk assessment, and audit methodologies.&lt;br /&gt;&lt;br /&gt;Second, we need to establish clear standards for AI audits. These standards should be developed by experts in the field and should be regularly updated to reflect the latest developments in AI.&lt;br /&gt;&lt;br /&gt;Third, we need to create a culture of quality in AI auditing. This means holding companies accountable for the quality of their audits and rewarding auditors for their expertise and experience.&lt;br /&gt;&lt;hr /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Conclusion&lt;/h3&gt;AI auditing is critical to ensuring the safe and responsible development of AI systems. By investing in the training and development of competent AI auditors, we can help ensure that these systems are used for good and that their potential benefits are realized.&lt;br /&gt;&lt;br /&gt;Let&#39;s foster a culture of rigorous AI auditing with a strong emphasis on auditor expertise. Share your thoughts in the comments!&lt;br /&gt;&lt;br /&gt;#AI #auditing #artificialintelligence #safety #technology #riskmanagement&lt;/div&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/4787720258231048661/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/4787720258231048661' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/4787720258231048661'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/4787720258231048661'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/01/ai-audit-and-importance-of-having.html' title='AI Audit and the Importance of Having Competent Auditor'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEha1yiBxIsz1cEUJO7ES9p7tZGQa2Parc0xa6UTGYX763Z77m65O5fxo3VFKxbd2N3TInWluLA5H228j0Cs6C6-ahHRrcsRxae9X5vu8XXtYKOikfdjGuMNbZlCoUHmbHTkSytSNJU-ZyBvqeCULuU_LfqnMqrTNjGTxPGqTtFeEb_NcTGAgk4fhPeIAJ_e/s72-w479-h326-c/Designer%20(1).jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-5400213593658191772</id><published>2025-01-07T18:25:00.000-08:00</published><updated>2025-01-07T18:25:44.736-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AI"/><category scheme="http://www.blogger.com/atom/ns#" term="Artificial Intelligent"/><category scheme="http://www.blogger.com/atom/ns#" term="Qualitative Review"/><category scheme="http://www.blogger.com/atom/ns#" term="Tool"/><title type='text'>AI Writing Tools for Beginners: A Review of Sudowrite, Rytr, and NovelAI</title><content type='html'>&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;i&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;i&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLyJsRC7YnwoS4XIXWK3P_kQZLciggGHM_6kp9kX8I58nHmOOj_C6EeHSBdLG-d4v7D1ZD7pDHYM4GQVhbFFiRygmYDYZFYoxcRFr4S1kxHaAeK3d-CoPMnBC2B3qYTcx95HnOsLTmkxDGWeAX8CKIiOvkAk_ACkF5enBTCxeoWYrvTVWudR6q_B1ibTQe/s1024/Designer%20(9).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLyJsRC7YnwoS4XIXWK3P_kQZLciggGHM_6kp9kX8I58nHmOOj_C6EeHSBdLG-d4v7D1ZD7pDHYM4GQVhbFFiRygmYDYZFYoxcRFr4S1kxHaAeK3d-CoPMnBC2B3qYTcx95HnOsLTmkxDGWeAX8CKIiOvkAk_ACkF5enBTCxeoWYrvTVWudR6q_B1ibTQe/w562-h320/Designer%20(9).jpeg&quot; width=&quot;562&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;i&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;AI is revolutionizing how we write, and AI writing tools are becoming increasingly popular among writers of all levels. If you&#39;re a beginner writer looking to improve your writing skills or simply looking for a way to overcome writer&#39;s block, AI writing tools can be a valuable asset. In this article, we&#39;ll review three of the most popular AI writing tools on the market: Sudowrite, Rytr, and NovelAI. We&#39;ll also discuss which tool is the best for beginners.&lt;/span&gt;&lt;/i&gt;&lt;p&gt;&lt;/p&gt;&lt;h3 style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;Comparison&lt;/span&gt;&lt;/h3&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;u&gt;Sudowrite&lt;/u&gt;&lt;/h4&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;p&gt;&lt;b&gt;Pros&lt;/b&gt;:&amp;nbsp;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;ul&gt;&lt;li&gt;Excellent for character and plot development&amp;nbsp;&lt;/li&gt;&lt;li&gt;Focus on long-form writing&amp;nbsp;&lt;/li&gt;&lt;li&gt;User-friendly interface&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;p&gt;&lt;b&gt;Cons&lt;/b&gt;:&amp;nbsp;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;ul&gt;&lt;li&gt;Can be expensive.&amp;nbsp;&lt;/li&gt;&lt;li&gt;Limited free trial&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href=&quot;https://www.sudowrite.com/&quot;&gt;https://www.sudowrite.com/&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;u&gt;Rytr&lt;/u&gt;&lt;/h4&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;p&gt;&lt;b&gt;Pros&lt;/b&gt;:&amp;nbsp;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;ul&gt;&lt;li&gt;Versatile tool&lt;/li&gt;&lt;li&gt;Affordable options&lt;/li&gt;&lt;li&gt;Easy to use&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;p&gt;&lt;b&gt;Cons&lt;/b&gt;:&amp;nbsp;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;ul&gt;&lt;li&gt;May not be as specialized&lt;/li&gt;&lt;li&gt;Output quality can vary&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href=&quot;https://rytr.me/pricing/&quot;&gt;https://rytr.me/pricing/&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;u&gt;NovelAI&amp;nbsp;&lt;/u&gt;&lt;/h4&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;p&gt;&lt;b&gt;Pros&lt;/b&gt;:&amp;nbsp;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;ul&gt;&lt;li&gt;Creative and imaginative output&lt;/li&gt;&lt;li&gt;Strong community&amp;nbsp;&lt;/li&gt;&lt;li&gt;Image generation&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;p&gt;&lt;b&gt;Cons&lt;/b&gt;:&amp;nbsp;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;ul&gt;&lt;li&gt;Steeper learning curve&lt;/li&gt;&lt;li&gt;Potentially NSFW content&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href=&quot;https://novelai.net/&quot;&gt;https://novelai.net/&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Recommendation for Beginners&lt;/h3&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;i&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;Rytr is a good starting point for beginners who want to explore AI writing tools without a significant upfront investment. It is versatile and affordable, and its simple interface makes it easy to use. However, use it wisely, as the free edition has a limitation on the number of words it can generate.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Key Considerations&lt;/h3&gt;&lt;p&gt;&lt;/p&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;b&gt;Budget&lt;/b&gt;: Determine how much you&#39;re willing to spend on a subscription.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Writing style&lt;/b&gt;: Consider the genre and style of your novel. Some tools may be better suited for certain genres than others.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Learning curve&lt;/b&gt;: Choose a tool that you find intuitive and easy to use.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Trial periods&lt;/b&gt;: Take advantage of free trials or limited-time offers to test different tools before committing to a subscription.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Conclusion&lt;/h3&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;i&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;AI writing tools can be a valuable asset for beginner writers. However, it is important to remember that these tools do not replace your creativity and writing skills. Use them to enhance your writing process, overcome writer&#39;s block, and explore new ideas.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Additional Tips&lt;/h3&gt;&lt;p&gt;&lt;/p&gt;&lt;ol style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Use a combination of different AI writing tools to get the best results.&lt;/li&gt;&lt;li&gt;You can just experiment with different prompts to see what works best for you.&lt;/li&gt;&lt;li&gt;Don&#39;t be afraid to edit and revise the output from AI writing tools.&lt;/li&gt;&lt;li&gt;Use AI writing tools to help you overcome writer&#39;s block, but don&#39;t rely on them to do all the work for you.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;p/s: The content is originated via collaboration with Gemini&lt;/div&gt;&lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/5400213593658191772/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/5400213593658191772' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/5400213593658191772'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/5400213593658191772'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2025/01/ai-writing-tools-for-beginners-review.html' title='AI Writing Tools for Beginners: A Review of Sudowrite, Rytr, and NovelAI'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLyJsRC7YnwoS4XIXWK3P_kQZLciggGHM_6kp9kX8I58nHmOOj_C6EeHSBdLG-d4v7D1ZD7pDHYM4GQVhbFFiRygmYDYZFYoxcRFr4S1kxHaAeK3d-CoPMnBC2B3qYTcx95HnOsLTmkxDGWeAX8CKIiOvkAk_ACkF5enBTCxeoWYrvTVWudR6q_B1ibTQe/s72-w562-h320-c/Designer%20(9).jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-6296703758029923566</id><published>2024-12-14T22:09:00.000-08:00</published><updated>2024-12-14T22:09:30.269-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Java"/><category scheme="http://www.blogger.com/atom/ns#" term="JDK"/><category scheme="http://www.blogger.com/atom/ns#" term="Jenv"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><category scheme="http://www.blogger.com/atom/ns#" term="Tips and Trick"/><title type='text'>Troubleshooting JEnv problem</title><content type='html'>&lt;p&gt;It has been a while since I managed my development environment and as I wish to get my hands dirty again, I started to cleanup my java environment, and it turn out a mess or simply saying a mistake I did.&lt;/p&gt;&lt;p&gt;If your Jenv suddenly fail to work and your java environment did not change as you intended, follow the link below&lt;/p&gt;&lt;p&gt;1.&amp;nbsp;&lt;a href=&quot;https://github.com/jenv/jenv&quot;&gt;https://github.com/jenv/jenv&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhaKUwOj7AIxME8RkclTJflvaI6vBS9XZBfRWFgKPo-Elit3gMl7nrsXk62iTtb3r0ZAMNMUWkVb0whlvsMscFLqu9OqMwcN5RL7tY8xab7rNC9yqXm7Iz6pumlfdFqba8nxv98vqFifRnk8aKraANbkgpnHNn60hvD0YeFSGI2MPveO3sXLnDvwsOrxOzV&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;882&quot; data-original-width=&quot;1854&quot; height=&quot;311&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhaKUwOj7AIxME8RkclTJflvaI6vBS9XZBfRWFgKPo-Elit3gMl7nrsXk62iTtb3r0ZAMNMUWkVb0whlvsMscFLqu9OqMwcN5RL7tY8xab7rNC9yqXm7Iz6pumlfdFqba8nxv98vqFifRnk8aKraANbkgpnHNn60hvD0YeFSGI2MPveO3sXLnDvwsOrxOzV=w654-h311&quot; width=&quot;654&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Do follow steps shown and don&#39;t skip.&lt;p&gt;&lt;/p&gt;&lt;p&gt;2.&amp;nbsp;&lt;a href=&quot;https://www.jenv.be/&quot;&gt;https://www.jenv.be/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;background-color: rgba(0, 0, 0, 0.9); color: #2fff12; font-family: &amp;quot;Andale Mono&amp;quot;; font-size: 13px; font-variant-ligatures: no-common-ligatures;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEixTwIvcSekIEE9shmp7Gs63V5R_FPm6B9nRM5T21hgN3r5yKoEE_j6zpyoeXg8Qo_mvwDDsK4tEV2bPPxCAEJMexVYGlYydQijJpUYjxsANgMFmZdi6s7lsCbkdG4mLtU2RlPa0jreKQKY40VUVz7WZ6IQ8NRuht-6jb-uAq414GAKkwIBtd0Za9FrZfXY&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;938&quot; data-original-width=&quot;1934&quot; height=&quot;305&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEixTwIvcSekIEE9shmp7Gs63V5R_FPm6B9nRM5T21hgN3r5yKoEE_j6zpyoeXg8Qo_mvwDDsK4tEV2bPPxCAEJMexVYGlYydQijJpUYjxsANgMFmZdi6s7lsCbkdG4mLtU2RlPa0jreKQKY40VUVz7WZ6IQ8NRuht-6jb-uAq414GAKkwIBtd0Za9FrZfXY=w631-h305&quot; width=&quot;631&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Finally, I manage to get the right Java version that I need for the development.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;p class=&quot;p1&quot; style=&quot;background-color: rgba(0, 0, 0, 0.9); color: #2fff12; font-family: &amp;quot;Andale Mono&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px;&quot;&gt;&lt;span class=&quot;s1&quot; style=&quot;font-variant-ligatures: no-common-ligatures;&quot;&gt;openjdk version &quot;23.0.1&quot; 2024-10-15&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p1&quot; style=&quot;background-color: rgba(0, 0, 0, 0.9); color: #2fff12; font-family: &amp;quot;Andale Mono&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px;&quot;&gt;&lt;span class=&quot;s1&quot; style=&quot;font-variant-ligatures: no-common-ligatures;&quot;&gt;OpenJDK Runtime Environment Homebrew (build 23.0.1)&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p1&quot; style=&quot;background-color: rgba(0, 0, 0, 0.9); color: #2fff12; font-family: &amp;quot;Andale Mono&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px;&quot;&gt;&lt;span class=&quot;s1&quot; style=&quot;font-variant-ligatures: no-common-ligatures;&quot;&gt;OpenJDK 64-Bit Server VM Homebrew (build 23.0.1, mixed mode, sharing)&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/6296703758029923566/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/6296703758029923566' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/6296703758029923566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/6296703758029923566'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2024/12/troubleshooting-jenv-problem.html' title='Troubleshooting JEnv problem'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEhaKUwOj7AIxME8RkclTJflvaI6vBS9XZBfRWFgKPo-Elit3gMl7nrsXk62iTtb3r0ZAMNMUWkVb0whlvsMscFLqu9OqMwcN5RL7tY8xab7rNC9yqXm7Iz6pumlfdFqba8nxv98vqFifRnk8aKraANbkgpnHNn60hvD0YeFSGI2MPveO3sXLnDvwsOrxOzV=s72-w654-h311-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-6324614457771768933</id><published>2024-11-25T23:55:00.005-08:00</published><updated>2024-11-25T23:55:47.152-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AI"/><category scheme="http://www.blogger.com/atom/ns#" term="AI Ethics"/><category scheme="http://www.blogger.com/atom/ns#" term="AI Governance and Ethics"/><category scheme="http://www.blogger.com/atom/ns#" term="Kecerdasan Buatan"/><category scheme="http://www.blogger.com/atom/ns#" term="Kepintaran Buatan"/><category scheme="http://www.blogger.com/atom/ns#" term="Melayu"/><title type='text'>Senario Untuk Menerangkan Mengenai AI Kepada Orang Kampung</title><content type='html'>Ketika ini terdapat jurang pengetahuan terutamanya dalam bidang AI antara mereka yang di bandar dan mereka yang berada di kampung-kampung yang jauh dari bandar dan pekan. Jadi, bagaimana kita boleh memberi penerangan kepada mereka ini mengenai teknologi terkini seperti AI.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Dengan bantuan AI, maka, terhasil dialog yang berkenaan yang mungkin kita boleh jadikan sebagai bahan media dalam memberikan penerangan, bukan sahaja kepada mereka yang berada di kampung, malah pada mereka yang kurang pemahaman berkaitan AI ini.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjV1LuANonCRJa9eMDVWGAwj7Jiw8FsPFi6ASj8VDD_tX7QTR2d9z9TcSG7dW72hyphenhyphenSNJmR2oyapvleFjfZdi4EIx6LgDavBHPbgxr0PmH0_nCsy-FXe1uRoFDtAMx0HQ6j1UMFHkGjMRnTzuy6YOOPHLWuEotzK-fCQaL7f7s7tXwa4m1TC3zedsu-yO9R1/s1024/Designer%20(1).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;357&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjV1LuANonCRJa9eMDVWGAwj7Jiw8FsPFi6ASj8VDD_tX7QTR2d9z9TcSG7dW72hyphenhyphenSNJmR2oyapvleFjfZdi4EIx6LgDavBHPbgxr0PmH0_nCsy-FXe1uRoFDtAMx0HQ6j1UMFHkGjMRnTzuy6YOOPHLWuEotzK-fCQaL7f7s7tXwa4m1TC3zedsu-yO9R1/w357-h357/Designer%20(1).jpeg&quot; width=&quot;357&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;strong&gt;Senario 1: Perbualan di Kedai Kopi&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;em&gt;(Watak: Pak Abu, Pak Mat, dan Mat Din)&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Abu:&lt;/strong&gt; Eh, korang dengar tak pasal benda AI yang budak-budak bandar selalu sembang tu? Aku dengar macam robot pintar pulak.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Mat:&lt;/strong&gt; Hah! AI tu macam otak manusia la, Abu. Tapi dia duduk dalam mesin. Kau tahu tak, kalau kau cakap &quot;Hai Google&quot; kat telefon kau, dia boleh jawab balik? Itu pun AI.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Mat Din:&lt;/strong&gt; Kalau aku cakap, “Google, buatkan aku kopi,” dia buat tak?&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Mat:&lt;/strong&gt; Kopi tak boleh, Din. Kau ingat AI tu pembantu rumah ke? Tapi kalau kau nak resepi buat kopi tarik power, dia boleh carikan kau langkah-langkah. Canggih, kan?&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Mat Din:&lt;/strong&gt; Hmmm, itu AI ke? Macam aku minta bini aku bancuh kopi, dia tanya, &quot;Nak manis ke, kurang gula?&quot; Itu kira AI jugak ke?&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Abu:&lt;/strong&gt; Eh, taklah Din. Itu isteri AI - &quot;Awek Intelligent&quot;! (semua ketawa)&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Mat:&lt;/strong&gt; Hahaha, tapi serius, AI ni boleh jadi macam manusia. Contohnya, kalau kita ni pekebun sawit, AI boleh tengok mana pokok yang tak sihat guna dron. Tak payah kita penat pusing kebun. Dia terus bagi tahu pokok mana kena tebang.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Mat Din:&lt;/strong&gt; Oh, kalau macam tu, aku kena start guna AI jugak lah. Letih aku pusing kebun hari-hari! Tapi kalau AI tak betul bagitahu, aku halau dia masuk parit!&lt;/p&gt;&lt;hr /&gt;&lt;h3&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYtrIWEmG5HUw3G568Z8b6ipJOx-iQ2TG5XgPdv887qHIKCrT-vac3t47rI1Yu1T3wQ7B5sz9n5DDK9JNmjRY59Ubg6ll4ei3-U1dEEnay1FIlvVK3voSXEtASDFfPZtgpK2ibI5d3BHBla4oU_HMBFEFR4V_vlaI_lRH1W7VOJ5iG2afCqI9SZRY1bkfz/s1024/Designer%20(2).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;363&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYtrIWEmG5HUw3G568Z8b6ipJOx-iQ2TG5XgPdv887qHIKCrT-vac3t47rI1Yu1T3wQ7B5sz9n5DDK9JNmjRY59Ubg6ll4ei3-U1dEEnay1FIlvVK3voSXEtASDFfPZtgpK2ibI5d3BHBla4oU_HMBFEFR4V_vlaI_lRH1W7VOJ5iG2afCqI9SZRY1bkfz/w363-h363/Designer%20(2).jpeg&quot; width=&quot;363&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;strong&gt;Senario 2: Perbualan di Tepi Sawah&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;&lt;em&gt;(Watak: Pak Long, Pak Ngah, dan Amir)&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Long:&lt;/strong&gt; Aku dengar sekarang ni petani kat Jepun pakai AI untuk tanam padi. Betul ke, Pak Ngah?&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Ngah:&lt;/strong&gt; Betul, Long. AI ni pandai. Dia boleh tengok cuaca, tanah, dan air, lepas tu dia bagi tahu bila masa sesuai tanam dan tuai. Kita ni pakai naluri je, sebab tu kadang-kadang hasil tak menjadi.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Amir:&lt;/strong&gt; Wah, canggihnya! Jadi AI tu macam bomoh sawah lah, ye?&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Ngah:&lt;/strong&gt; Bomoh moden lah, Amir. Dia tak pakai tangkal, tapi pakai sensor dan komputer.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Long:&lt;/strong&gt; Kalau AI ni pandai sangat, nanti kerja petani tak ada gunanya lah?&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Ngah:&lt;/strong&gt; Eh, taklah Long. AI ni tolong buat kerja berat je. Macam kita dulu guna kerbau, sekarang pakai traktor. AI ni traktor versi pintar. Tapi kena ada orang bijak jugak jaga dia, kalau tak dia &quot;lumpuh.&quot;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Amir:&lt;/strong&gt; Kalau macam tu, lepas ni aku nak pasang AI kat bendang aku. Kalau AI tu pandai sangat, suruh dia halau burung pipit sekali. Asyik makan padi aku je!&lt;/p&gt;&lt;hr /&gt;&lt;h3&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEga2ZTSfFQ7CSJ0WGfpa3I43MhlifPTWfWWA4w-sdfOv1ws8XTUsiZvvzIaMva3vIZUWg0DIC30t1plvVku_tdK55s0r1i2JqvvIDJ-7W9lX60c1aoSIsxiHXYJ8P2WxYlOW-S3jZOCBjtrtkd2wQ9WFCh4J7YMQcEenKOoOs7qcoyOJPJUvgffjgdWCcbP/s1024/Designer%20(3).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;373&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEga2ZTSfFQ7CSJ0WGfpa3I43MhlifPTWfWWA4w-sdfOv1ws8XTUsiZvvzIaMva3vIZUWg0DIC30t1plvVku_tdK55s0r1i2JqvvIDJ-7W9lX60c1aoSIsxiHXYJ8P2WxYlOW-S3jZOCBjtrtkd2wQ9WFCh4J7YMQcEenKOoOs7qcoyOJPJUvgffjgdWCcbP/w373-h373/Designer%20(3).jpeg&quot; width=&quot;373&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;strong&gt;Senario 3: Perbualan di Perkampungan Nelayan&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;&lt;em&gt;(Watak: Pak Ali, Pak Jali, dan Din Tekong)&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Ali:&lt;/strong&gt; Korang tahu tak, sekarang ada bot yang boleh gerak sendiri, pakai AI. Dia boleh cari ikan kat laut tanpa nelayan ikut pun.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Jali:&lt;/strong&gt; Lah, habislah kita kalau macam tu. Kalau AI pandai sangat, siapa nak makan nasi hasil titik peluh kita ni?&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Din Tekong:&lt;/strong&gt; Relaxlah, Jali. AI ni cuma tolong kita. Contohnya, kalau kau pasang sonar AI, dia boleh tunjuk kat mana ikan berkumpul. Tak payah kita main tebak je baling pukat.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Ali:&lt;/strong&gt; Tapi Din, kalau AI salah tengok, bawak kita pergi cari ikan duyung macam mana?&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Din Tekong:&lt;/strong&gt; Itu kau kena guna AI yang betul, Ali. Jangan main beli dari internet murah-murah. Nanti ikan tak dapat, bot kau pulak yang tenggelam!&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Jali:&lt;/strong&gt; Hahaha, tapi aku takutlah kalau AI pandai sangat. Nanti dia buat keputusan sendiri. Silap-silap, dia bawak bot pergi Filipina terus!&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Din Tekong:&lt;/strong&gt; Hahaha, itu AI lari rumah namanya. Jangan risau. AI tu tetap kena ada otak manusia kawal. Dia takkan berfungsi kalau kita tak suruh.&lt;/p&gt;&lt;hr /&gt;&lt;h3&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOM7Zuer35ngvaD2BxdQaAhJ81n0ilZw19ZFNPSj82KNAX1DAS8gzQ0GbdMIdUzY1svoNV3ia3cKvZ_8xrLSWMKGcExHYD80Zw8wjQL_UsSMFNYplv1A-oUB8xCZ6jSopniGTsrnh7Mwwdfgma6_beS_AQ3ODWgoXu9smekSBXYQDHVXqtwaJub_y7snxw/s1024/Designer%20(4).jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;355&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOM7Zuer35ngvaD2BxdQaAhJ81n0ilZw19ZFNPSj82KNAX1DAS8gzQ0GbdMIdUzY1svoNV3ia3cKvZ_8xrLSWMKGcExHYD80Zw8wjQL_UsSMFNYplv1A-oUB8xCZ6jSopniGTsrnh7Mwwdfgma6_beS_AQ3ODWgoXu9smekSBXYQDHVXqtwaJub_y7snxw/w355-h355/Designer%20(4).jpeg&quot; width=&quot;355&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;strong&gt;Senario 4: Perbualan di Dusun Buah&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;&lt;em&gt;(Watak: Wak Seman, Pak Teh, dan Amin)&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Wak Seman:&lt;/strong&gt; Tahu tak, sekarang ada AI yang boleh petik buah sendiri? Robot dia siap tahu mana buah durian yang matang, mana yang muda. Tak payah kita tunggu bawah pokok kena hempap.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Teh:&lt;/strong&gt; Seriuslah, Wak? Kalau ada benda tu, aku nak beli satu. Tak payah dah aku sakit pinggang panjat pokok manggis.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Amin:&lt;/strong&gt; Eh, Wak. Kalau macam tu, robot tu tahu ke beza durian kampung dengan durian Musang King?&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Wak Seman:&lt;/strong&gt; Tahu, Amin. Dia siap boleh scan bau durian kau tu. Kalau Musang King, dia ambil. Kalau durian kampung, dia letak balik. Canggih kan?&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Pak Teh:&lt;/strong&gt; Tapi Wak, kalau AI pandai sangat, nanti dia tak nak kerja dengan kita, dia buat kebun sendiri macam mana?&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Wak Seman:&lt;/strong&gt; Hahaha, jangan takutlah Teh. AI ni tak boleh makan durian, tak ada tekak. Kau tak payah risau dia buka gerai jual durian.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Amin:&lt;/strong&gt; Tapi Wak, kalau AI dah pandai, nanti kita malas. Semua benda serah kat robot. Jangan-jangan nanti AI tu robot jadi tuan kita!&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Wak Seman:&lt;/strong&gt; Itulah pasal kena kawal. AI ni ibarat parang tajam. Kalau kau pandai guna, kerja senang. Kalau tak, kau sendiri kena potong. Jadi, gunalah dengan bijak.&lt;/p&gt;&lt;p&gt;Nota: Gambar di jana oleh Microsoft Designer manakala dialog di jana oleh ChatGPT.&lt;br /&gt;&lt;br /&gt;_______________________________________________________________________________&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;b&gt;Kesimpulan&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;&lt;p&gt;Dari perbualan di kedai kopi, sawah, perkampungan nelayan, dan kebun buah, kita dapat melihat bahawa AI (Kecerdasan Buatan) sebenarnya adalah alat yang dicipta untuk memudahkan kehidupan kita. Sama seperti penggunaan teknologi lain seperti traktor, sonar, dan mesin automasi, AI bertujuan untuk membantu manusia bekerja dengan lebih cekap, cepat, dan berkesan. Namun, ia tidak bermakna AI boleh menggantikan manusia sepenuhnya. Sebaliknya, AI masih memerlukan pemantauan, kawalan, dan keputusan manusia untuk berfungsi dengan baik.&lt;/p&gt;&lt;p&gt;Walau bagaimanapun, semua kelebihan ini datang dengan cabaran. AI bukan sahaja pandai melakukan tugas teknikal, tetapi ia juga semakin mampu membuat keputusan, memberi cadangan, malah mempengaruhi hasil sesuatu situasi. Justeru, ini membawa kita kepada persoalan besar: &lt;strong&gt;bagaimana kita memastikan AI selamat, beretika, dan tidak mendatangkan bahaya kepada manusia?&lt;/strong&gt;&lt;/p&gt;&lt;span&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/span&gt;&lt;h3&gt;&lt;strong&gt;AI Governance and Ethics&lt;/strong&gt;&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;Keperluan AI Governance:&lt;/strong&gt; Sama seperti bagaimana undang-undang dan peraturan digunakan untuk mengawal selia tingkah laku manusia, AI juga memerlukan &quot;peraturan&quot; untuk memastikan ia digunakan secara bertanggungjawab. Tanpa kawalan, AI boleh disalahgunakan – contohnya, digunakan untuk tujuan yang tidak beretika seperti pengawasan tanpa izin, penipuan data, atau manipulasi informasi. &lt;strong&gt;AI Governance&lt;/strong&gt; adalah satu rangka kerja yang memastikan AI digunakan mengikut garis panduan yang selamat, boleh dipercayai, dan bebas daripada bias.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;AI Ethics:&lt;/strong&gt; Dalam dialog tadi, terdapat kebimbangan tentang AI yang mungkin menjadi terlalu &quot;pintar&quot; hingga mendatangkan keburukan. Oleh itu, &lt;strong&gt;AI Ethics&lt;/strong&gt; sangat penting untuk memastikan AI berfungsi dengan adil dan tidak mengancam keselamatan atau hak manusia. Contohnya, jika AI digunakan untuk mengesan hasil sawah atau memilih buah, ia mesti memastikan tiada pihak yang terjejas, dan keputusan yang dibuat mestilah telus serta berasaskan fakta.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style=&quot;text-align: center;&quot;&gt;-------------------------------------------------------------------------&lt;/div&gt;&lt;div&gt;&lt;strong&gt;Keperluan untuk Belajar dan Ambil Tahu Teknologi&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;Kita sebagai masyarakat, tidak kira tinggal di bandar atau kampung, perlu sedar bahawa teknologi seperti AI bukan lagi sekadar perkara yang berlaku di luar negara atau dalam kalangan golongan profesional sahaja. Ia semakin memasuki kehidupan seharian kita – daripada telefon pintar hingga ke ladang, nelayan, dan industri.&lt;/p&gt;&lt;p&gt;Jika kita tidak memahami teknologi ini, kita mungkin hanya menjadi pengguna pasif yang bergantung kepada orang lain, tanpa kemampuan untuk mengawal atau memanfaatkan sepenuhnya potensi teknologi. Lebih buruk lagi, kita mungkin mudah dimanipulasi oleh pihak yang tidak bertanggungjawab.&lt;/p&gt;&lt;p&gt;Sebaliknya, dengan ilmu dan kesedaran:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Kita boleh menjadi pengguna yang bijak, yang tahu bagaimana menggunakan teknologi untuk faedah sendiri dan masyarakat.&lt;/li&gt;&lt;li&gt;Kita mampu mencipta peluang baharu, seperti mengembangkan pertanian pintar, perikanan pintar, atau automasi dalam pelbagai sektor.&lt;/li&gt;&lt;li&gt;Kita boleh memastikan bahawa teknologi digunakan dengan cara yang selamat, beretika, dan sejajar dengan nilai kemanusiaan.&lt;/li&gt;&lt;/ol&gt;&lt;hr /&gt;&lt;h3&gt;&lt;strong&gt;Penutup Inspirasi&lt;/strong&gt;&lt;/h3&gt;&lt;p&gt;AI adalah seperti pisau – ia boleh membantu kita memotong buah, tetapi ia juga boleh melukakan jika digunakan secara salah. Oleh itu, penting untuk kita &lt;strong&gt;faham, kawal, dan belajar&lt;/strong&gt; tentang AI, agar teknologi ini menjadi alat yang membantu kita, bukan alat yang merugikan.&lt;/p&gt;&lt;p&gt;Dengan memahami &lt;strong&gt;AI Governance and Ethics&lt;/strong&gt;, kita bukan sahaja melindungi diri kita, tetapi juga memastikan bahawa negara kita terus berkembang sebagai bangsa yang berilmu, berdaya saing, dan mampu berdiri sama tinggi dengan negara maju. Seperti mana sawah perlukan bajak, kebun perlukan tangan, dan bot perlukan tekong, &lt;strong&gt;kita perlukan ilmu untuk maju.&lt;/strong&gt; 💪✨&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/6324614457771768933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/6324614457771768933' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/6324614457771768933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/6324614457771768933'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2024/11/senario-untuk-menerangkan-mengenai-ai.html' title='Senario Untuk Menerangkan Mengenai AI Kepada Orang Kampung'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjV1LuANonCRJa9eMDVWGAwj7Jiw8FsPFi6ASj8VDD_tX7QTR2d9z9TcSG7dW72hyphenhyphenSNJmR2oyapvleFjfZdi4EIx6LgDavBHPbgxr0PmH0_nCsy-FXe1uRoFDtAMx0HQ6j1UMFHkGjMRnTzuy6YOOPHLWuEotzK-fCQaL7f7s7tXwa4m1TC3zedsu-yO9R1/s72-w357-h357-c/Designer%20(1).jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-7765998544222732889</id><published>2024-06-21T02:07:00.000-07:00</published><updated>2024-06-21T02:07:27.122-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AI"/><category scheme="http://www.blogger.com/atom/ns#" term="Robotics"/><category scheme="http://www.blogger.com/atom/ns#" term="Sciences"/><title type='text'>FATHER OF ROBOTICS : ISMAIL AL-JAZARI</title><content type='html'>&lt;p&gt;&lt;b&gt;FATHER OF ROBOTICS: ISMAIL AL-JAZARI (1136–1206)&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjmy3YQEGOUKvpX0I9dcHl2U5MDlU2HTkAp1TlfsJBY0GtOsfngMPijIbp8Xzf_kPpoT7usBRHIKceiOJEfkwjRddgviFfQfo07n1jF2LXdJPWpo8THbDkyVIjh-R9tgsXNV_z54PlcbW7w4epM8x4NeXtqh68Lg5IvXsacQ-2Qvxp_bTzmZEa68nYn-h7V&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;1135&quot; data-original-width=&quot;827&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjmy3YQEGOUKvpX0I9dcHl2U5MDlU2HTkAp1TlfsJBY0GtOsfngMPijIbp8Xzf_kPpoT7usBRHIKceiOJEfkwjRddgviFfQfo07n1jF2LXdJPWpo8THbDkyVIjh-R9tgsXNV_z54PlcbW7w4epM8x4NeXtqh68Lg5IvXsacQ-2Qvxp_bTzmZEa68nYn-h7V&quot; width=&quot;175&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Ismail Al-Jazari was a polymath: a scholar, inventor, mechanical engineer, artisan, artist and mathematician from the Artuqid Dynasty of Jazira in Mesopotamia.&#39;&lt;b&gt;The Book of Knowledge of Ingenious Mechanical Devices&lt;/b&gt;&#39; is a medieval Arabic book written by Ismail al-Jazari in the 12th century.&amp;nbsp;&lt;p&gt;&lt;/p&gt;&lt;p&gt;It describes over fifty mechanical devices and automata, including clocks, water-raising machines, musical automatons, and humanoid robots. Al-Jazari provides detailed instructions for constructing each device and includes anecdotes and historical references.&amp;nbsp;&lt;/p&gt;&lt;p&gt;The book had a significant influence on the development of European clockmaking and automata, and it offers insights into daily life and technological innovations in the Islamic world during the medieval period. It&#39;s his book that influenced key concepts of modern-day robotics.&lt;/p&gt;&lt;p&gt;Copied...&lt;/p&gt;&lt;p&gt;The book is accessible at &lt;a href=&quot;https://archive.org/details/cover_20200113_2057/mode/2up&quot;&gt;https://archive.org/details/cover_20200113_2057/mode/2up&lt;/a&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/7765998544222732889/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/7765998544222732889' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/7765998544222732889'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/7765998544222732889'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2024/06/father-of-robotics-ismail-al-jazari.html' title='FATHER OF ROBOTICS : ISMAIL AL-JAZARI'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEjmy3YQEGOUKvpX0I9dcHl2U5MDlU2HTkAp1TlfsJBY0GtOsfngMPijIbp8Xzf_kPpoT7usBRHIKceiOJEfkwjRddgviFfQfo07n1jF2LXdJPWpo8THbDkyVIjh-R9tgsXNV_z54PlcbW7w4epM8x4NeXtqh68Lg5IvXsacQ-2Qvxp_bTzmZEa68nYn-h7V=s72-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-700965374426323628</id><published>2023-11-08T16:02:00.001-08:00</published><updated>2023-11-08T16:02:25.848-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AI"/><category scheme="http://www.blogger.com/atom/ns#" term="Artificial Intelligent"/><category scheme="http://www.blogger.com/atom/ns#" term="IoT"/><category scheme="http://www.blogger.com/atom/ns#" term="IR4.0"/><category scheme="http://www.blogger.com/atom/ns#" term="Robot"/><category scheme="http://www.blogger.com/atom/ns#" term="Smart Manufacturing"/><category scheme="http://www.blogger.com/atom/ns#" term="Technology"/><title type='text'> 🚨 A Wake-Up Call for Pattern Approval in the Age of Automation</title><content type='html'>&lt;p&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; white-space-collapse: preserve;&quot;&gt;Recent news on the unfortunate incident involving a South Korean man and an industrial robot serves as a stark reminder of the importance of stringent controls and assessments for robotics and AI systems. It&#39;s not the first case, and the implications are clear—it&#39;s high time we prioritize the thorough evaluation of algorithms and safety measures to prevent potential disasters. The last thing we need is our technological advancements turning into a real-life Terminator scenario or a page out of The Matrix.&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;&lt;br style=&quot;box-sizing: inherit;&quot; /&gt;&lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;💡 Ensuring Safety in the Age of AI&lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;&lt;br style=&quot;box-sizing: inherit;&quot; /&gt;&lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;As we accelerate into an era dominated by automation, the necessity of validating artificial intelligence and robots before their integration into real-world scenarios becomes increasingly apparent. The risks associated with overlooking this crucial step are far-reaching, impacting not only individuals but also the trust we place in these transformative technologies. It&#39;s not just a matter of compliance; it&#39;s about safeguarding lives and instilling confidence in the capabilities of the AI and robotic systems we deploy.&lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;&lt;br style=&quot;box-sizing: inherit;&quot; /&gt;&lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;🌐✨ Empowering a Secure Tomorrow with SIRIM&#39;s Assurance&lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;&lt;br style=&quot;box-sizing: inherit;&quot; /&gt;&lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;In our dynamic world embracing the swift rise of automation, SIRIM, leveraging the expertise of NMIM, assumes a central role in sculpting a future where innovation harmonizes effortlessly with safety. As we lament recent unfortunate incidents, it is incumbent upon us to collectively advocate for responsible and secure technological advancements. SIRIM stands at the forefront, equipped to deliver crucial evaluations and verifications. Through SIRIM&#39;s pattern approval certifications, we meticulously inspect, test, and validate both hardware and software algorithms. Our commitment is to ensure that these technologies are not only cutting-edge but also safe, reliable, and robust, adhering strictly to the ethical standards of AI. Together, let&#39;s pave the way for a future where robots and AI enrich our lives without compromising on safety. &lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;&lt;br style=&quot;box-sizing: inherit;&quot; /&gt;&lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;&lt;span class=&quot;ql-hashtag&quot; data-test-ql-hashtag=&quot;true&quot; style=&quot;background: var(--artdeco-reset-base-background-transparent); border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; font-size: var(--artdeco-reset-base-font-size-hundred-percent); font-weight: var(--artdeco-reset-typography-font-weight-bold); margin: var(--artdeco-reset-base-margin-zero); outline: var(--artdeco-reset-base-outline-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); vertical-align: var(--artdeco-reset-base-vertical-align-baseline);&quot;&gt;#ai&lt;/span&gt; &lt;span class=&quot;ql-hashtag&quot; data-test-ql-hashtag=&quot;true&quot; style=&quot;background: var(--artdeco-reset-base-background-transparent); border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; font-size: var(--artdeco-reset-base-font-size-hundred-percent); font-weight: var(--artdeco-reset-typography-font-weight-bold); margin: var(--artdeco-reset-base-margin-zero); outline: var(--artdeco-reset-base-outline-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); vertical-align: var(--artdeco-reset-base-vertical-align-baseline);&quot;&gt;#artificialintelligence&lt;/span&gt; &lt;span class=&quot;ql-hashtag&quot; data-test-ql-hashtag=&quot;true&quot; style=&quot;background: var(--artdeco-reset-base-background-transparent); border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; font-size: var(--artdeco-reset-base-font-size-hundred-percent); font-weight: var(--artdeco-reset-typography-font-weight-bold); margin: var(--artdeco-reset-base-margin-zero); outline: var(--artdeco-reset-base-outline-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); vertical-align: var(--artdeco-reset-base-vertical-align-baseline);&quot;&gt;#patternapproval&lt;/span&gt; &lt;span class=&quot;ql-hashtag&quot; data-test-ql-hashtag=&quot;true&quot; style=&quot;background: var(--artdeco-reset-base-background-transparent); border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; font-size: var(--artdeco-reset-base-font-size-hundred-percent); font-weight: var(--artdeco-reset-typography-font-weight-bold); margin: var(--artdeco-reset-base-margin-zero); outline: var(--artdeco-reset-base-outline-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); vertical-align: var(--artdeco-reset-base-vertical-align-baseline);&quot;&gt;#sirim&lt;/span&gt; &lt;span class=&quot;ql-hashtag&quot; data-test-ql-hashtag=&quot;true&quot; style=&quot;background: var(--artdeco-reset-base-background-transparent); border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; font-size: var(--artdeco-reset-base-font-size-hundred-percent); font-weight: var(--artdeco-reset-typography-font-weight-bold); margin: var(--artdeco-reset-base-margin-zero); outline: var(--artdeco-reset-base-outline-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); vertical-align: var(--artdeco-reset-base-vertical-align-baseline);&quot;&gt;#nmim&lt;/span&gt; &lt;span class=&quot;ql-hashtag&quot; data-test-ql-hashtag=&quot;true&quot; style=&quot;background: var(--artdeco-reset-base-background-transparent); border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; font-size: var(--artdeco-reset-base-font-size-hundred-percent); font-weight: var(--artdeco-reset-typography-font-weight-bold); margin: var(--artdeco-reset-base-margin-zero); outline: var(--artdeco-reset-base-outline-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); vertical-align: var(--artdeco-reset-base-vertical-align-baseline);&quot;&gt;#aimalaysia&lt;/span&gt; &lt;span class=&quot;ql-hashtag&quot; data-test-ql-hashtag=&quot;true&quot; style=&quot;background: var(--artdeco-reset-base-background-transparent); border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; font-size: var(--artdeco-reset-base-font-size-hundred-percent); font-weight: var(--artdeco-reset-typography-font-weight-bold); margin: var(--artdeco-reset-base-margin-zero); outline: var(--artdeco-reset-base-outline-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); vertical-align: var(--artdeco-reset-base-vertical-align-baseline);&quot;&gt;#sirimdigitalfactory&lt;/span&gt; &lt;span class=&quot;ql-hashtag&quot; data-test-ql-hashtag=&quot;true&quot; style=&quot;background: var(--artdeco-reset-base-background-transparent); border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; font-size: var(--artdeco-reset-base-font-size-hundred-percent); font-weight: var(--artdeco-reset-typography-font-weight-bold); margin: var(--artdeco-reset-base-margin-zero); outline: var(--artdeco-reset-base-outline-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); vertical-align: var(--artdeco-reset-base-vertical-align-baseline);&quot;&gt;#TechSafetyLeadership&lt;/span&gt; &lt;span class=&quot;ql-hashtag&quot; data-test-ql-hashtag=&quot;true&quot; style=&quot;background: var(--artdeco-reset-base-background-transparent); border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; font-size: var(--artdeco-reset-base-font-size-hundred-percent); font-weight: var(--artdeco-reset-typography-font-weight-bold); margin: var(--artdeco-reset-base-margin-zero); outline: var(--artdeco-reset-base-outline-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); vertical-align: var(--artdeco-reset-base-vertical-align-baseline);&quot;&gt;#InnovationWithIntegrity&lt;/span&gt; 🚀🔐&lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;&lt;br style=&quot;box-sizing: inherit;&quot; /&gt;&lt;/p&gt;&lt;p style=&quot;--artdeco-reset-typography_getfontsize: 1.6rem; --artdeco-reset-typography_getlineheight: 1.5; background-color: white; border: var(--artdeco-reset-base-border-zero); box-sizing: inherit; color: rgba(0, 0, 0, 0.9); counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; cursor: text; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 20px; line-height: var(--artdeco-reset-typography_getLineHeight); margin: 0px; padding: 0px; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); white-space-collapse: preserve;&quot;&gt;&lt;a href=&quot;https://www.msn.com/en-my/news/national/s-korean-man-killed-by-industrial-robot/ar-AA1jAFsc?ocid=socialshare&amp;amp;pc=HCTS&amp;amp;cvid=578e3d2c73984db599c5028ce71d43fa&amp;amp;ei=19&quot; target=&quot;_blank&quot;&gt;S. Korean man killed by robot&lt;/a&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/700965374426323628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/700965374426323628' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/700965374426323628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/700965374426323628'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2023/11/wake-up-call-for-pattern-approval-in.html' title=' 🚨 A Wake-Up Call for Pattern Approval in the Age of Automation'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-6579601065341312056</id><published>2023-02-06T18:46:00.003-08:00</published><updated>2023-02-06T18:46:19.158-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="GIS"/><title type='text'> Open source GIS software</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://www.supermap.com/en-us/template/pc/cn2016/images/20200619mob.jpg?t=0618&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;400&quot; data-original-width=&quot;640&quot; height=&quot;327&quot; src=&quot;https://www.supermap.com/en-us/template/pc/cn2016/images/20200619mob.jpg?t=0618&quot; width=&quot;523&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;1.&amp;nbsp;QGIS:&amp;nbsp;&lt;/span&gt;&lt;a data-attribute-index=&quot;8&quot; href=&quot;https://lnkd.in/gbpdexdZ&quot; style=&quot;background-color: white; border: var(--artdeco-reset-link-border-zero); box-sizing: inherit; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; font-weight: var(--font-weight-bold); line-height: inherit !important; margin: var(--artdeco-reset-base-margin-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); position: relative; text-decoration: var(--artdeco-reset-link-text-decoration-none); touch-action: manipulation; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); word-break: normal;&quot;&gt;https://lnkd.in/gbpdexdZ&lt;/a&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;&amp;nbsp;QGIS is a user-friendly Open Source Geographic Information System (GIS) licensed under the GNU General Public License. QGIS is an official project of the Open Source Geospatial Foundation (OSGeo). It runs on Linux, Unix, Mac OSX, Windows and Android and supports numerous vectors, raster, and database formats and functionalities.&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;2.&amp;nbsp;GRASS GIS:&amp;nbsp;&lt;/span&gt;&lt;a data-attribute-index=&quot;9&quot; href=&quot;https://lnkd.in/geXbgBBD&quot; style=&quot;background-color: white; border: var(--artdeco-reset-link-border-zero); box-sizing: inherit; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; font-weight: var(--font-weight-bold); line-height: inherit !important; margin: var(--artdeco-reset-base-margin-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); position: relative; text-decoration: var(--artdeco-reset-link-text-decoration-none); touch-action: manipulation; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); word-break: normal;&quot;&gt;https://lnkd.in/geXbgBBD&lt;/a&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;&amp;nbsp;GRASS GIS, is an Open Source Geographic Information System providing powerful raster, vector and geospatial processing capabilities. It can be used either as a stand-alone application or as backend for other software packages such as&amp;nbsp;QGIS&amp;nbsp;and&amp;nbsp;R&amp;nbsp;or in the cloud. It is distributed freely under the terms of the GNU General Public License (GPL). GRASS GIS is a founding member of the Open Source Geospatial Foundation (OSGeo).&lt;/span&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;3.&amp;nbsp;OpenJUMP:&amp;nbsp;&lt;/span&gt;&lt;a data-attribute-index=&quot;10&quot; href=&quot;http://www.openjump.org/&quot; style=&quot;background-color: white; border: var(--artdeco-reset-link-border-zero); box-sizing: inherit; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; font-weight: var(--font-weight-bold); line-height: inherit !important; margin: var(--artdeco-reset-base-margin-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); position: relative; text-decoration: var(--artdeco-reset-link-text-decoration-none); touch-action: manipulation; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); word-break: normal;&quot;&gt;http://www.openjump.org/&lt;/a&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;&amp;nbsp;OpenJUMP&amp;nbsp;is an open source Geographic Information System (GIS) written in the Java programming language. It is developed and maintained by a group of volunteers from around the globe. OpenJUMP started as JUMP GIS designed by&amp;nbsp;Vivid Solutions.&lt;/span&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;4.&amp;nbsp;uDig:&amp;nbsp;&lt;/span&gt;&lt;a data-attribute-index=&quot;11&quot; href=&quot;https://lnkd.in/gGMF8rnC&quot; style=&quot;background-color: white; border: var(--artdeco-reset-link-border-zero); box-sizing: inherit; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; font-weight: var(--font-weight-bold); line-height: inherit !important; margin: var(--artdeco-reset-base-margin-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); position: relative; text-decoration: var(--artdeco-reset-link-text-decoration-none); touch-action: manipulation; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); word-break: normal;&quot;&gt;https://lnkd.in/gGMF8rnC&lt;/a&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;&amp;nbsp;&amp;nbsp;he goal of uDig is to provide a complete Java solution for desktop GIS data access, editing, and viewing.&lt;/span&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;5.&amp;nbsp;MapWindow GIS:&amp;nbsp;&lt;/span&gt;&lt;a data-attribute-index=&quot;12&quot; href=&quot;https://www.mapwindow.org/&quot; style=&quot;background-color: white; border: var(--artdeco-reset-link-border-zero); box-sizing: inherit; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; font-weight: var(--font-weight-bold); line-height: inherit !important; margin: var(--artdeco-reset-base-margin-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); position: relative; text-decoration: var(--artdeco-reset-link-text-decoration-none); touch-action: manipulation; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); word-break: normal;&quot;&gt;https://www.mapwindow.org/&lt;/a&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;&amp;nbsp;The MapWindow GIS project includes a free and open source desktop geographic information system (GIS) with an extensible plugin architecture, a GIS ActiveX control, and C# GIS programmer library called DotSpatial.&lt;/span&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;6.&amp;nbsp;gvSIG:&amp;nbsp;&lt;/span&gt;&lt;a data-attribute-index=&quot;13&quot; href=&quot;https://lnkd.in/gGYvfvHi&quot; style=&quot;background-color: white; border: var(--artdeco-reset-link-border-zero); box-sizing: inherit; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; font-weight: var(--font-weight-bold); line-height: inherit !important; margin: var(--artdeco-reset-base-margin-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); position: relative; text-decoration: var(--artdeco-reset-link-text-decoration-none); touch-action: manipulation; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); word-break: normal;&quot;&gt;https://lnkd.in/gGYvfvHi&lt;/a&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;&amp;nbsp;gvSIG is a free and open-source GIS software that provides a range of functionalities for managing, analyzing and visualizing geographic data. It supports multiple file formats and provides advanced GIS analysis and visualization tools.&lt;/span&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;7.&amp;nbsp;Geospatial Data Abstraction Library (GDAL):&amp;nbsp;&lt;/span&gt;&lt;a data-attribute-index=&quot;14&quot; href=&quot;https://lnkd.in/gw_S-BZA&quot; style=&quot;background-color: white; border: var(--artdeco-reset-link-border-zero); box-sizing: inherit; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; font-weight: var(--font-weight-bold); line-height: inherit !important; margin: var(--artdeco-reset-base-margin-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); position: relative; text-decoration: var(--artdeco-reset-link-text-decoration-none); touch-action: manipulation; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); word-break: normal;&quot;&gt;https://lnkd.in/gw_S-BZA&lt;/a&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;&amp;nbsp;GDAL is a free and open-source software library for reading, writing and transforming geospatial data. It supports a wide range of data formats and provides a comprehensive set of geospatial processing tools.&lt;/span&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;br style=&quot;background-color: white; box-sizing: inherit; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; line-height: inherit !important;&quot; /&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;8.&amp;nbsp;Geoserver:&amp;nbsp;&lt;/span&gt;&lt;a data-attribute-index=&quot;15&quot; href=&quot;https://lnkd.in/gnPEmH8T&quot; style=&quot;background-color: white; border: var(--artdeco-reset-link-border-zero); box-sizing: inherit; font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; font-weight: var(--font-weight-bold); line-height: inherit !important; margin: var(--artdeco-reset-base-margin-zero); overflow-wrap: normal; padding: var(--artdeco-reset-base-padding-zero); position: relative; text-decoration: var(--artdeco-reset-link-text-decoration-none); touch-action: manipulation; vertical-align: var(--artdeco-reset-base-vertical-align-baseline); word-break: normal;&quot;&gt;https://lnkd.in/gnPEmH8T&lt;/a&gt;&lt;span style=&quot;background-color: white; color: rgba(0, 0, 0, 0.9); font-family: -apple-system, system-ui, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Fira Sans&amp;quot;, Ubuntu, Oxygen, &amp;quot;Oxygen Sans&amp;quot;, Cantarell, &amp;quot;Droid Sans&amp;quot;, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Lucida Grande&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px;&quot;&gt;&amp;nbsp;Geoserver is a free and open-source software for publishing and managing geospatial data over the web. It supports a wide range of data formats and provides a user-friendly interface for managing and serving geographic data over the web.&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div&gt;Credit to &lt;a href=&quot;https://www.linkedin.com/posts/vikas-ghadamode-a6a3939b_project-software-database-activity-7027212300948316160-WQw0?utm_source=share&amp;amp;utm_medium=member_desktop&quot; target=&quot;_blank&quot;&gt;Vikas Ghadamode&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/6579601065341312056/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/6579601065341312056' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/6579601065341312056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/6579601065341312056'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2023/02/open-source-gis-software.html' title=' Open source GIS software'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-5299226374098749730</id><published>2021-07-02T08:33:00.002-07:00</published><updated>2021-07-02T08:33:18.696-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Windows&#xa;Windows 11&#xa;Microsoft&#xa;Experience&#xa;Technology"/><title type='text'>Windows 11 Insider - Taste of new Windows</title><content type='html'>&lt;span style=&quot;font-family: verdana;&quot;&gt;I recently subscribed to be one of the Microsoft Insider Program to get the taste of new things from Microsoft. That happen after a friend of mine, whom are strongly supporter of OSS ad being promoting it share in his Facebook on the Windows 11 installation (of which he still unable to install it during this article is written here).

&lt;/span&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQTr8WT2aB4kOtDkqI7qb1z_2BPc9m2mnrYi6NSPV6XZ-CRcM3HHTPvEk-1JfRy3j8h7muZmVi6I4VZOI7P6FiQpK9-8W203aMdqTL7_1C-zhXd75iMeUAy-zP0a8H5_UIMfyhT-mq-6Km/s1920/1.png&quot; style=&quot;display: block; padding: 1em 0px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; data-original-height=&quot;1080&quot; data-original-width=&quot;1920&quot; height=&quot;267&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQTr8WT2aB4kOtDkqI7qb1z_2BPc9m2mnrYi6NSPV6XZ-CRcM3HHTPvEk-1JfRy3j8h7muZmVi6I4VZOI7P6FiQpK9-8W203aMdqTL7_1C-zhXd75iMeUAy-zP0a8H5_UIMfyhT-mq-6Km/w474-h267/1.png&quot; width=&quot;474&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;
To those whom are interested to try, may browse it at&amp;nbsp;&lt;a href=&quot;https://blogs.windows.com/windowsexperience/2021/06/24/introducing-windows-11/&quot;&gt;Introducing Windows 11 | Windows Experience Blog&lt;/a&gt;&lt;/span&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Rightly before you installed, you might wanna check you computer health by using the tools from Microsoft. Check it out here&amp;nbsp;&lt;a href=&quot;https://support.microsoft.com/en-us/windows/check-your-device-performance-and-health-in-windows-security-59d8499d-b6fd-6930-7667-ebf8ae10e08d&quot;&gt;Check your device performance and health in Windows Security (microsoft.com)&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;It will indicate weather you are using a PC that could withstand the power of Windows 11 or not.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Next - subscribe for &lt;b&gt;Microsoft Insider Program&lt;/b&gt; and do windows update where you have he ability to update to Windows 11 Insider (as I did). If you are in the Microsoft Insider Program, just open the windows update setting. It will indicate that you are ready for windows 11. Click install or update button to start the Windows 11 installation.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;And here is my experience using it...&lt;/span&gt;&lt;/h3&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;The installation is much faster compared to previous windows family. It took me about an hour to download it (with my Unifi running at 30Mbps shared with 5 kids for their home-schooling). And then it perform necessary setup. It will took about 10 minutes to complete install (on Corei7 10th Gen Lenovo Yoga with 512GB SSD and 16GB RAM).&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Upon started, you will see Windows 11 page (or like mines - pinky screen) before the login screen / lock screen appear as below. Pretty nice on the design and the image change every time you lock or startup your machine&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikL0zp3PvGXCIvWhnht0w0yXH1tJKKB4glTvjzhIvOtpzLmUZuuVEm2VPrLGegHb8UAnMeD9moCvAuyv6qcH4vosL8bK4eVTTYDivi10Tpa0IT0JB6UjUjVJmwvvMJMVAjiMkXdxcHMnmu/s1920/2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1080&quot; data-original-width=&quot;1920&quot; height=&quot;304&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikL0zp3PvGXCIvWhnht0w0yXH1tJKKB4glTvjzhIvOtpzLmUZuuVEm2VPrLGegHb8UAnMeD9moCvAuyv6qcH4vosL8bK4eVTTYDivi10Tpa0IT0JB6UjUjVJmwvvMJMVAjiMkXdxcHMnmu/w541-h304/2.png&quot; width=&quot;541&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Now, you can use password, pin number and if your machine has biometric capability, than you can login using fingerprint or face. I think it start from Windows 10.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Upon login, you will realize that Windows 11 would like you think it as multi-platform OS; meaning you can use it on Laptop, PC, phone and tablet. It also try to imitate Mac OS icon display.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Here is my toolbar&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMwPqQAui5JhJVqWLjDKgL3_H9wggKvJ2EnYMcogFJgidEa18PvhPQlMyrB2QsKEhi909zdb_7-PDTOGGaJd-xjgX_75LM6xxfcOYAu6OO968ygDe_D1Z86PUJrEV3aOwEYlbkyVdNcPi4//&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;52&quot; data-original-width=&quot;1919&quot; height=&quot;28&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMwPqQAui5JhJVqWLjDKgL3_H9wggKvJ2EnYMcogFJgidEa18PvhPQlMyrB2QsKEhi909zdb_7-PDTOGGaJd-xjgX_75LM6xxfcOYAu6OO968ygDe_D1Z86PUJrEV3aOwEYlbkyVdNcPi4/w465-h28/image.png&quot; width=&quot;465&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;br /&gt;Your icon may be different than mine, but probably, the first 4 from left shall be the same&lt;/span&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDoRxkigY165YuBMRh_G8T7hojMRNRycQzlujwnWMjhd7mspRV2qFEB6bbr0PErmUx10r3CG4FEZi_wFt5CBgmsAGqTSBaGtKSDunwrNs3cXHNhw5i4m4y3-X0zyJJ7eHiFsJ7ixeHL7Qr//&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;52&quot; data-original-width=&quot;367&quot; height=&quot;45&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDoRxkigY165YuBMRh_G8T7hojMRNRycQzlujwnWMjhd7mspRV2qFEB6bbr0PErmUx10r3CG4FEZi_wFt5CBgmsAGqTSBaGtKSDunwrNs3cXHNhw5i4m4y3-X0zyJJ7eHiFsJ7ixeHL7Qr//&quot; width=&quot;320&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;On click the first icon, window icon (I guessed), you will get to see the list of pre-install icon or apps that you already had. Kind of interesting, refreshing and modernize ways of browsing things. If you are familiar with Mac, this shall be your forte to search and find things&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-ZxCFxiy9EvR9sUoEJMFaf8q6Z6SuR8C-cl95WXqEwkH9360Vn4DAd-OKu6FY9VGD-KR_8IloCGPTV3ePma7t6GO4cKBR817KAuU500QX8OUC99Rp14gAV15aTlW9ZoBvg5Skft1tWxOo/s780/3.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;780&quot; data-original-width=&quot;720&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-ZxCFxiy9EvR9sUoEJMFaf8q6Z6SuR8C-cl95WXqEwkH9360Vn4DAd-OKu6FY9VGD-KR_8IloCGPTV3ePma7t6GO4cKBR817KAuU500QX8OUC99Rp14gAV15aTlW9ZoBvg5Skft1tWxOo/w353-h383/3.png&quot; width=&quot;353&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;On search button, better than previous and clean interface&lt;/span&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgeyv1oSsge6hAtovpCJys5k5Xd-is3I0mgHXaXSn9b0CC0oA_cx-qJR9qv3TFRG16b6V3oT828XJjegFaRMhyJneQqeBZ_MN8-YHb8jAXkoZ2Y6KQOX5bvRGBE9C7X0V90SPPWIK8CUjpO//&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;732&quot; data-original-width=&quot;813&quot; height=&quot;321&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgeyv1oSsge6hAtovpCJys5k5Xd-is3I0mgHXaXSn9b0CC0oA_cx-qJR9qv3TFRG16b6V3oT828XJjegFaRMhyJneQqeBZ_MN8-YHb8jAXkoZ2Y6KQOX5bvRGBE9C7X0V90SPPWIK8CUjpO/w357-h321/image.png&quot; width=&quot;357&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;The third button is actually for you to have multiple windows which you can flip through. It is exactly similar to MacOS features. Once you add new desktop, it will behave exactly how you manage your Mac multiple desktop/screen. It is confusing at the beginning since the mouse pad on laptop was not design to behave like Mac OS handle multiple desktop.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiElWeDkB8Axr8jZLuFG4hzUbTXU1aGEvmW-BaNkkH73rX4-rehtrXNTuVe_4yYnKXZ_CqKxfLL1LmBJRzCJQo-2YTDq1L-ep2uq4e9cSd3NChY9WPlDt79r0zaQYt2sq7RUOJM3IsCUdQG//&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;195&quot; data-original-width=&quot;567&quot; height=&quot;147&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiElWeDkB8Axr8jZLuFG4hzUbTXU1aGEvmW-BaNkkH73rX4-rehtrXNTuVe_4yYnKXZ_CqKxfLL1LmBJRzCJQo-2YTDq1L-ep2uq4e9cSd3NChY9WPlDt79r0zaQYt2sq7RUOJM3IsCUdQG/w428-h147/image.png&quot; width=&quot;428&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;The last new button on the toolbar is the widget button. Upon click on the button, you will get to see a list of widget appear on your left screen. I&#39;ve yet to explore the widget, I think you can certain pre-defined widget&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9AkA7JrJPngtuYtmevdu3XGfkUO1eLnvZCdMqFvRCDq-BmHTItoA_JfllNewRmhsYj4h9XzgTuVluPYxtUuKshEs6JYm97pLa4x4J9DlehDqaGsqxvuBChhJzaChiuDfsf9XNDhCvMfam//&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;1061&quot; data-original-width=&quot;853&quot; height=&quot;330&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9AkA7JrJPngtuYtmevdu3XGfkUO1eLnvZCdMqFvRCDq-BmHTItoA_JfllNewRmhsYj4h9XzgTuVluPYxtUuKshEs6JYm97pLa4x4J9DlehDqaGsqxvuBChhJzaChiuDfsf9XNDhCvMfam/w266-h330/image.png&quot; width=&quot;266&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Finally, I would like to show the last changes (that I noticed since Window 10 and it was enhanced in Windows 11), the Setting button (previously we used to call Control Panel). Everything was done to harmonize the UIUX for windows on various platform. User will experience a seamless journey for using Windows on laptop, PC or mobile devices.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMpkMKUAo0XtoddoFv-zhW15DpwWtUHtqmVXnms6HD3avOLXt738sGi9nUQ7wgHZCpFOZ7_hobLUVBIZX_okdC28I3Rrv1_e9fKqKBhT-aYQZFrUTnAKS9yes-Y4Mj4tBPsINGae7EAJho//&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;514&quot; data-original-width=&quot;1197&quot; height=&quot;210&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMpkMKUAo0XtoddoFv-zhW15DpwWtUHtqmVXnms6HD3avOLXt738sGi9nUQ7wgHZCpFOZ7_hobLUVBIZX_okdC28I3Rrv1_e9fKqKBhT-aYQZFrUTnAKS9yes-Y4Mj4tBPsINGae7EAJho/w490-h210/image.png&quot; width=&quot;490&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;That&#39;s on the Look and Feel of which I rated 9/10. It was a significant improve from previous version,&lt;b&gt; cleaner and refreshing modernize feeling&lt;/b&gt;. The only failure, from my perspective is the behavior which it tries to imitate Mac OS. It is almost there but not there yet. :)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;By the way, no worries on other applications or tools installed earlier. Upgrading from Windows 10 to Windows 11 won&#39;t affect your software and you &lt;b&gt;don&#39;t need to reinstall&lt;/b&gt; (not like previous OS, you may lost the registry and need to reinstall all software)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: verdana; font-weight: normal;&quot;&gt;The Performance&lt;/span&gt;&lt;/h3&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Lets have a look on the performance of Windows 11. To ensure I&#39;m not bias or wrongly judging it, here is the machine specs used&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Lenovo Yoga S730 - SMIL Australian version (released in Australia)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Intel Core i7 10th Gen&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;16GB RAM&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;512 GB SSD&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;2 Antivirus installed&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;b&gt;Starting up / Reboot&lt;/b&gt; - Windows 10 is much more faster, but the difference is not that significant to me (approximately 3 seconds different)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;b&gt;Upon successfully login&lt;/b&gt; - Windows 10 is much more faster, but again, the differences is not that significant to user.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;b&gt;Using Edge&lt;/b&gt; - here where it start. Opening too many tabs on Edge in Windows 11 causing the memory to stood up eating about 50% of my memory. If you open other Microsoft software such as Teams and Outlook, you can feel that it has slowing down a bit. But for normal user, there won&#39;t be much difference that could cause you to lost patient.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjX2HzAQP58dvZkkN0YxLc8EsS6IJZX3br8rDxzKUcurwtMmsH1mp1fYZl5o_L9pjHKUVgj47SYR5XOsngxf-y-Urf98GxmW2MNk08TCaL0u1uGqAwKG3hM9I4tHklb08taAf57UFF5FHwY//&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;250&quot; data-original-width=&quot;645&quot; height=&quot;190&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjX2HzAQP58dvZkkN0YxLc8EsS6IJZX3br8rDxzKUcurwtMmsH1mp1fYZl5o_L9pjHKUVgj47SYR5XOsngxf-y-Urf98GxmW2MNk08TCaL0u1uGqAwKG3hM9I4tHklb08taAf57UFF5FHwY/w490-h190/image.png&quot; width=&quot;490&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;The &lt;b&gt;vmmem&lt;/b&gt; previously was around 40%. However, in Windows 11, sometimes, it goes to more than 60%. Above is the image of my memory utilization. I have closed Teams and my edge only have 7 tabs. I do feel that Windows 11 yet to able to close properly any program and it takes time to close it.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;b&gt;Other Apps / software&lt;/b&gt; - Some of the apps, for instance GIMP (I&#39;m using it for image processing), social media desktop apps, and even office are quite slow to open on the first time you trigger it. However, the time difference compared to Windows 10 is not that relevant for you to switch back.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: verdana; font-size: small;&quot;&gt;Will I promote Windows 11?&lt;/span&gt;&lt;/h3&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;My verdict, Go for it when it is officially release. Why? Despite the lagging (which not that significant), you will get an OS that is close to Mac (to Mac user), friendly to Linux and a clean windows interface which will improve your user experience, hence do the work better. I bet that they will improve for official release.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;NOTE: Please make sure you are using SSD and at least 16GB RAM. Else, I would not suggest it.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Ok. Have fun trying it. Adois&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Haszeli :)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/5299226374098749730/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/5299226374098749730' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/5299226374098749730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/5299226374098749730'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2021/07/windows-11-insider-taste-of-new-windows.html' title='Windows 11 Insider - Taste of new Windows'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQTr8WT2aB4kOtDkqI7qb1z_2BPc9m2mnrYi6NSPV6XZ-CRcM3HHTPvEk-1JfRy3j8h7muZmVi6I4VZOI7P6FiQpK9-8W203aMdqTL7_1C-zhXd75iMeUAy-zP0a8H5_UIMfyhT-mq-6Km/s72-w474-h267-c/1.png" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-3358556127134478252</id><published>2020-12-28T20:14:00.002-08:00</published><updated>2020-12-28T20:14:17.135-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="IT News"/><category scheme="http://www.blogger.com/atom/ns#" term="Knowledge Sharing"/><category scheme="http://www.blogger.com/atom/ns#" term="Project Management"/><title type='text'>Technical Project Manager - Unifications of the two worlds</title><content type='html'>&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p  style=&quot; margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block;&quot;&gt;   &lt;a title=&quot;View Technical Project Manager - Unifications of the two worlds on Scribd&quot; href=&quot;https://www.scribd.com/document/489336822/Technical-Project-Manager-Unifications-of-the-two-worlds#from_embed&quot;  style=&quot;text-decoration: underline;&quot; &gt;Technical Project Manager - Unifications of the two worlds&lt;/a&gt; by &lt;a title=&quot;View Haszeli Ahmad&#39;s profile on Scribd&quot; href=&quot;https://www.scribd.com/user/1164709/Haszeli-Ahmad#from_embed&quot;  style=&quot;text-decoration: underline;&quot; &gt;Haszeli Ahmad&lt;/a&gt; on Scribd&lt;/p&gt;&lt;iframe class=&quot;scribd_iframe_embed&quot; title=&quot;Technical Project Manager - Unifications of the two worlds&quot; src=&quot;https://www.scribd.com/embeds/489336822/content?start_page=1&amp;view_mode=slideshow&amp;access_key=key-0MgFyHa7vOKhKYBYKl3i&quot; data-auto-height=&quot;false&quot; data-aspect-ratio=&quot;1.7790927021696252&quot; scrolling=&quot;no&quot; id=&quot;doc_46875&quot; width=&quot;100%&quot; height=&quot;600&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/3358556127134478252/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/3358556127134478252' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/3358556127134478252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/3358556127134478252'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2020/12/technical-project-manager-unifications.html' title='Technical Project Manager - Unifications of the two worlds'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total><georss:featurename>Kuala Lumpur, Federal Territory of Kuala Lumpur, Malaysia</georss:featurename><georss:point>3.139003 101.686855</georss:point><georss:box>-25.171230836178847 66.530605 31.449236836178844 136.84310499999998</georss:box></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-4815255906310496328</id><published>2020-06-13T19:51:00.000-07:00</published><updated>2020-06-13T19:51:39.853-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Sample Code"/><title type='text'>Caching an Inverse of a Matrix Using R</title><content type='html'>&lt;br /&gt;&lt;div&gt;&lt;section class=&quot;section section--body&quot; name=&quot;5967&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;0e44&quot;&gt;Caching an Inverse of a Matrix Using&amp;nbsp;R&amp;nbsp;&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;b278&quot;&gt;Matrix inversion is usually a costly computation and there may be some benefit to caching the inverse of a matrix rather than computing it repeatedly.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;f930&quot;&gt;This is an example code to cache an inverse of a matrix which then called if:&lt;/p&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;7618&quot;&gt;1. The new matrix computation similar to the previous matrix&lt;/blockquote&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;0c2a&quot;&gt;2. Matrix is invertible — Read  &lt;a class=&quot;markup--anchor markup--blockquote-anchor&quot; data-href=&quot;https://deepai.org/machine-learning-glossary-and-terms/invertible-matrix#:~:text=An%20Invertible%20Matrix%20is%20a,in%20the%20matrix%20are%200s.&quot; href=&quot;https://deepai.org/machine-learning-glossary-and-terms/invertible-matrix#:~:text=An%20Invertible%20Matrix%20is%20a,in%20the%20matrix%20are%200s.&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Invertible Matrix&lt;/a&gt;&lt;/blockquote&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;bd24&quot;&gt;3. The structure and content of the new matrix is equal to previous&lt;/blockquote&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;7c8a&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;ad4d&quot;&gt;The program consists of two functions&lt;/p&gt;&lt;ol class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;8556&quot;&gt;A function to cache the matrix and the inverse. It is similar to getter and setter in many programming languages like Java and C.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;ba90&quot;&gt;A function which will be call for the computational process of the matrix&lt;/li&gt;&lt;/ol&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;29dd&quot;&gt;Here are parts of the code:&lt;/p&gt;&lt;figure class=&quot;graf graf--figure&quot; name=&quot;7799&quot;&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;576&quot; data-image-id=&quot;1*end632RslYomyBW7LbOrMA.png&quot; data-width=&quot;870&quot; height=&quot;265&quot; src=&quot;https://cdn-images-1.medium.com/max/1200/1*end632RslYomyBW7LbOrMA.png&quot; width=&quot;400&quot; /&gt;&lt;figcaption class=&quot;imageCaption&quot;&gt;Setting the&amp;nbsp;matrix&lt;/figcaption&gt;&lt;/figure&gt;&lt;figure class=&quot;graf graf--figure&quot; name=&quot;23c2&quot;&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;366&quot; data-image-id=&quot;1*sdkqQUhNRjLwiQrIrs2Cgw.png&quot; data-width=&quot;1104&quot; height=&quot;133&quot; src=&quot;https://cdn-images-1.medium.com/max/1200/1*sdkqQUhNRjLwiQrIrs2Cgw.png&quot; width=&quot;400&quot; /&gt;&lt;figcaption class=&quot;imageCaption&quot;&gt;Setting the inverse&amp;nbsp;matrix&lt;/figcaption&gt;&lt;/figure&gt;&lt;figure class=&quot;graf graf--figure&quot; name=&quot;94fd&quot;&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;362&quot; data-image-id=&quot;1*Cj5Y1kSbWzeAwtH-LDAAJA.png&quot; data-width=&quot;866&quot; height=&quot;167&quot; src=&quot;https://cdn-images-1.medium.com/max/1200/1*Cj5Y1kSbWzeAwtH-LDAAJA.png&quot; width=&quot;400&quot; /&gt;&lt;figcaption class=&quot;imageCaption&quot;&gt;Verification on the&amp;nbsp;matrix&lt;/figcaption&gt;&lt;/figure&gt;&lt;figure class=&quot;graf graf--figure&quot; name=&quot;5365&quot;&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;256&quot; data-image-id=&quot;1*NOPYXaI1CYRMAIt3u6FxqA.png&quot; data-width=&quot;1024&quot; height=&quot;100&quot; src=&quot;https://cdn-images-1.medium.com/max/1200/1*NOPYXaI1CYRMAIt3u6FxqA.png&quot; width=&quot;400&quot; /&gt;&lt;figcaption class=&quot;imageCaption&quot;&gt;Setting the new&amp;nbsp;inverse&lt;/figcaption&gt;&lt;/figure&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;a7af&quot;&gt;Complete source code is reachable at &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://github.com/masteramuk/ProgrammingAssignment2&quot; href=&quot;https://github.com/masteramuk/ProgrammingAssignment2&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;https://github.com/masteramuk/ProgrammingAssignment2&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;b19b&quot;&gt;If you like the post, &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://www.buymeacoffee.com/masteramuk&quot; href=&quot;https://www.buymeacoffee.com/masteramuk&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;do buy me a coffee please&amp;nbsp;:)&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;/div&gt;
&lt;a href=&quot;https://www.buymeacoffee.com/masteramuk&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Buy Me A Coffee&quot; src=&quot;https://cdn.buymeacoffee.com/buttons/default-red.png&quot; style=&quot;height: 51px; width: 217px;&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/4815255906310496328/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/4815255906310496328' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/4815255906310496328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/4815255906310496328'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2020/06/caching-inverse-of-matrix-usingr.html' title='Caching an Inverse of a Matrix Using R'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-839715460327363723</id><published>2020-06-01T17:05:00.000-07:00</published><updated>2020-06-01T17:05:22.615-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Big Data"/><category scheme="http://www.blogger.com/atom/ns#" term="Data"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Analysis"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Analytics"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Sciences"/><category scheme="http://www.blogger.com/atom/ns#" term="Open Source"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><category scheme="http://www.blogger.com/atom/ns#" term="R language"/><category scheme="http://www.blogger.com/atom/ns#" term="R Studio"/><category scheme="http://www.blogger.com/atom/ns#" term="Sample Code"/><category scheme="http://www.blogger.com/atom/ns#" term="Software Development"/><category scheme="http://www.blogger.com/atom/ns#" term="Tips and Trick"/><title type='text'>Reading entire URL content is really easy using R</title><content type='html'>&lt;p class=&quot;graf graf--p&quot; name=&quot;6e48&quot;&gt;In my good old days, reading the entire content of a website is not easy. The process of web scraping and getting the required data requires lots of programming and a few tools. A friend of mine even developed and sold the tool which he called it (during the development) as &lt;em class=&quot;markup--em markup--p-em&quot;&gt;myrobot&lt;/em&gt;. He developed using PHP.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;b6d9&quot;&gt;Now, it is much easier and one of the many ways is using R.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;40a9&quot;&gt;Here are the steps (which requires you to write ONLY two lines of code)&lt;/p&gt;&lt;ol class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;49af&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Connect to the website using URL command&lt;/strong&gt;&lt;br /&gt;&lt;em class=&quot;markup--em markup--li-em&quot;&gt;con &amp;lt;- url ([the website url], “r”)&lt;/em&gt;&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;2baa&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Then, read the website&lt;/strong&gt;&lt;br /&gt;&lt;em class=&quot;markup--em markup--li-em&quot;&gt;x &amp;lt;- readLines(con)&lt;/em&gt;&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;56e8&quot;&gt;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;Do whatever you wish with the data&lt;/strong&gt;. In this example, I print out the head of the website and also copy the whole content to a file.&lt;br /&gt;&lt;em class=&quot;markup--em markup--li-em&quot;&gt;head(x)&lt;br /&gt;dput(x, “readFromUrlExample.html”)&lt;/em&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;f3f4&quot;&gt;There you go.&lt;/p&gt;&lt;figure class=&quot;graf graf--figure&quot; name=&quot;822b&quot;&gt;&lt;img alt=&quot;Result of the head(x) function&quot; class=&quot;graf-image&quot; data-height=&quot;206&quot; data-image-id=&quot;1*XLFYgWMTIy9OuTPB1a-K-Q.png&quot; data-width=&quot;984&quot; height=&quot;134&quot; src=&quot;https://cdn-images-1.medium.com/max/1200/1*XLFYgWMTIy9OuTPB1a-K-Q.png&quot; title=&quot;Result of the head(x) function&quot; width=&quot;640&quot; /&gt;&lt;/figure&gt;&lt;figure class=&quot;graf graf--figure&quot; name=&quot;09b9&quot;&gt;&lt;img alt=&quot;Snapshot of the content of the file copied into readFromUrlExamplehtml&quot; class=&quot;graf-image&quot; data-height=&quot;944&quot; data-image-id=&quot;1*-INu_sCoB1gFEm91ryOmIA.png&quot; data-width=&quot;2412&quot; height=&quot;250&quot; src=&quot;https://cdn-images-1.medium.com/max/1200/1*-INu_sCoB1gFEm91ryOmIA.png&quot; title=&quot;Snapshot of the content of the file copied into readFromUrlExamplehtml&quot; width=&quot;640&quot; /&gt;&lt;figcaption class=&quot;imageCaption&quot;&gt;&lt;br /&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;1797&quot;&gt;The sample source code can be retrieved at&amp;nbsp;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;c878&quot;&gt;&lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://github.com/masteramuk/LearnR-Coursera/blob/master/sample-ReadFromUrl.R&quot; href=&quot;https://github.com/masteramuk/LearnR-Coursera/blob/master/sample-ReadFromUrl.R&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;https://github.com/masteramuk/LearnR-Coursera/blob/master/sample-ReadFromUrl.R&lt;/a&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/839715460327363723/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/839715460327363723' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/839715460327363723'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/839715460327363723'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2020/06/reading-entire-url-content-is-really.html' title='Reading entire URL content is really easy using R'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-918818216593340811</id><published>2020-05-29T20:12:00.001-07:00</published><updated>2020-05-29T20:12:36.122-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Big Data"/><category scheme="http://www.blogger.com/atom/ns#" term="Data"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Analysis"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Analytics"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Integration"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Sciences"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Visualization"/><category scheme="http://www.blogger.com/atom/ns#" term="GitHub"/><category scheme="http://www.blogger.com/atom/ns#" term="R Studio"/><title type='text'>Solving Committing Issue between R Studio and Github</title><content type='html'>&lt;section class=&quot;section section--body&quot; name=&quot;a0e6&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;5c8e&quot;&gt;Solving Committing Issue between R Studio and&amp;nbsp;Github&lt;/h3&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;129e&quot;&gt;In the normal development process, you will create a repo (the repo in this article is located at Github), followed by the cloning process or download as full directory into your localhost. It is much easier and straightforward. There won’t be any issues especially if your scrum master or release manager is a well trained person in handling branching, merging, and releasing code using git.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;b43a&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;17df&quot;&gt;However, in most cases, especially for a full-stack developer who did everything on its own, you may encounter an issue if:&lt;/p&gt;&lt;ol class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;ac81&quot;&gt;You created a project in your localhost first using R Studio and set Git as your SVN through your project setting&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;30b2&quot;&gt;Then you created the repo at the GitHub&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;d01a&quot;&gt;Finally, upon ready, you run command to sync with your GitHub&lt;/li&gt;&lt;/ol&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;04bf&quot;&gt;The following is the command that you use/execute and the result of running the command:&lt;/p&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;b3e4&quot;&gt;&lt;font color=&quot;#9c27b0&quot; face=&quot;courier&quot; size=&quot;2&quot;&gt;% git remote add origin [your GitHub report url]&lt;br /&gt;% git pull origin master&lt;br /&gt;warning: no common commits&lt;br /&gt;remote: Enumerating objects: 3, done.&lt;br /&gt;remote: Counting objects: 100% (3/3), done.&lt;br /&gt;remote: Compressing objects: 100% (2/2), done.&lt;br /&gt;remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0&lt;br /&gt;Unpacking objects: 100% (3/3), done.&lt;br /&gt;From [your GitHub report url]&lt;br /&gt;* branch master -&amp;gt; FETCH_HEAD&lt;br /&gt;* [new branch] master -&amp;gt; origin/master&lt;br /&gt;&lt;strong class=&quot;markup--strong markup--blockquote-strong&quot;&gt;fatal: refusing to merge unrelated histories&lt;/strong&gt;&lt;/font&gt;&lt;/blockquote&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;5339&quot;&gt;and you see the last sentence&amp;nbsp;.. &lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;ERROR&lt;/strong&gt;&lt;/p&gt;&lt;section class=&quot;section section--body&quot; name=&quot;b43a&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;ad00&quot;&gt;&lt;span class=&quot;markup--strong markup--p-strong&quot;&gt;Then, based on google, you followed with the following command&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;ad00&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;% git push -u origin master&lt;/strong&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;3882&quot;&gt;and you get the following response (or similar)&lt;/p&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;9e9c&quot;&gt;&lt;font color=&quot;#ba67c8&quot; face=&quot;courier&quot; size=&quot;2&quot;&gt;To [your GitHub report url]&lt;br /&gt;! [rejected] master -&amp;gt; master (non-fast-forward)&lt;br /&gt;error: failed to push some refs to ‘&lt;/font&gt;&lt;span style=&quot;color: #ba67c8; font-family: courier; font-size: small;&quot;&gt;[your GitHub report url]&lt;/span&gt;&lt;font color=&quot;#ba67c8&quot; face=&quot;courier&quot; size=&quot;2&quot;&gt;&#39;&lt;br /&gt;hint: Updates were rejected because the tip of your current branch is behind&lt;br /&gt;hint: its remote counterpart. Integrate the remote changes (e.g.&lt;br /&gt;hint: ‘git pull&amp;nbsp;…’) before pushing again.&lt;br /&gt;hint: See the ‘Note about fast-forwards’ in ‘git push — help’ for details.&lt;/font&gt;&lt;/blockquote&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;2c9e&quot;&gt;Next, you try to pull again to get the latest branch based on the previous error by running the command to pull again&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;be0c&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;% git pull origin master&lt;/strong&gt;&lt;/p&gt;&lt;div&gt;And the result is still not promising&amp;nbsp;&lt;/div&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;a0a1&quot;&gt;&lt;font color=&quot;#ba67c8&quot; face=&quot;courier&quot; size=&quot;2&quot;&gt;From [your GitHub report url]&lt;br /&gt;* branch master -&amp;gt; FETCH_HEAD&lt;br /&gt;fatal: refusing to merge unrelated histories&lt;/font&gt;&lt;/blockquote&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;7c5d&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;What are you missing or wrongly done? I won’t be able to tell you the missing or wrong steps, but I’m sharing your step to overcoming the problem.&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;db47&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;&lt;hr class=&quot;section-divider&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;section-content&quot;&gt;&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;b255&quot;&gt;&lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;&lt;font color=&quot;#7b1fa2&quot; size=&quot;6&quot;&gt;&lt;u&gt;STEPS&lt;/u&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;ol class=&quot;postList&quot;&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;03f0&quot;&gt;Go to you localhost directory where you created the project&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;b619&quot;&gt;In that directory, you should find a file name&amp;nbsp;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;.gitignore&lt;/strong&gt; &amp;amp; folder&amp;nbsp;&lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;.git&lt;/strong&gt;&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;5d61&quot;&gt;Delete both by running rm -fr (if you are using windows, the command might be different)&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;397e&quot;&gt;Next, init your project file again by running the command &lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;git init&lt;/strong&gt;. You shall see the following message appear after executing the command — &lt;em class=&quot;markup--em markup--li-em&quot;&gt;Initialized empty Git repository in [your project path]&lt;/em&gt;&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;5811&quot;&gt;Followed by adding the remote repo by running the command &lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;git remote add origin [your GitHub repo url]&lt;/strong&gt;.&amp;nbsp;&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;4390&quot;&gt;The followed by &lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;git add&amp;nbsp;.&lt;/strong&gt; (make sure there is ‘.’ at the end of the command). It tells the git to add all directories in the remote repo to your local.&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;bc32&quot;&gt;Followed by &lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;git pull origin master&lt;/strong&gt;. If succeed, you shall be able to see the following result:&lt;br /&gt;&lt;em class=&quot;markup--em markup--li-em&quot;&gt;&lt;font color=&quot;#ba67c8&quot; face=&quot;courier&quot; size=&quot;2&quot;&gt;remote: Enumerating objects: 3, done.&lt;br /&gt;remote: Counting objects: 100% (3/3), done.&lt;br /&gt;remote: Compressing objects: 100% (2/2), done.&lt;br /&gt;remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0&lt;br /&gt;Unpacking objects: 100% (3/3), done.&lt;br /&gt;From [your GitHub repo url]&lt;br /&gt;* branch master -&amp;gt; FETCH_HEAD&lt;br /&gt;* [new branch] master -&amp;gt; origin/master&lt;/font&gt;&lt;/em&gt;&lt;/li&gt;&lt;li class=&quot;graf graf--li&quot; name=&quot;58df&quot;&gt;Finally, run &lt;strong class=&quot;markup--strong markup--li-strong&quot;&gt;git push -u origin master &lt;/strong&gt;to verify again. You shall see the following result to indicate it is successfully integrated between your local repo and your Github repo and R Studio shall be able to interact perfectly with GitHub.&lt;br /&gt;&lt;em class=&quot;markup--em markup--li-em&quot;&gt;Branch ‘master’ set up to track remote branch ‘master’ from ‘origin’. Everything up-to-date&lt;/em&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;27a0&quot;&gt;Once you have done all the steps, go ahead to your R Studio and perform &lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Stage -&amp;gt; Commit -&amp;gt; Commit Message -&amp;gt; Push&lt;/strong&gt; to complete the process. Refresh your Github page and you shall see all of your local files at your GitHub repo.&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;fee7&quot;&gt;If you find this useful, you can buy me a coffee&amp;nbsp;:) @&amp;nbsp;&lt;a href=&quot;https://www.buymeacoffee.com/masteramuk&quot; target=&quot;_blank&quot;&gt;https://www.buymeacoffee.com/masteramuk&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/918818216593340811/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/918818216593340811' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/918818216593340811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/918818216593340811'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2020/05/solving-committing-issue-between-r.html' title='Solving Committing Issue between R Studio and Github'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-2265811848354891452</id><published>2020-05-25T01:18:00.003-07:00</published><updated>2020-05-25T01:18:58.361-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Community Group"/><category scheme="http://www.blogger.com/atom/ns#" term="IT Gadget"/><category scheme="http://www.blogger.com/atom/ns#" term="Network"/><category scheme="http://www.blogger.com/atom/ns#" term="Tips and Trick"/><title type='text'>Solving Internet Router Problem - TM Unifi NETIS DL4480V</title><content type='html'>&lt;div class=&quot;separator&quot;&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;5a28&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;strong class=&quot;markup--strong markup--h3-strong&quot;&gt;TM Unifi NETIS DL4480V Connectivity Problem&lt;/strong&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;943&quot; data-image-id=&quot;0*UwRf9urhetFwMtle.jpg&quot; data-width=&quot;759&quot; height=&quot;320&quot; src=&quot;https://cdn-images-1.medium.com/max/900/0*UwRf9urhetFwMtle.jpg&quot; width=&quot;258&quot; /&gt;&lt;/h3&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;5a28&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;3e10&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot; style=&quot;font-weight: normal;&quot;&gt;After a while, the NETIS DL4480V router provided by TM upon subscribed to TM Streamyx (or TM Unifi lite) will fail to work properly. Your internet connection may be up and down or worst the router itself will frequently disconnected or restart.&lt;/font&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;8d8d&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot; style=&quot;font-weight: normal;&quot;&gt;Before that happen, in case you need to reset your router, Please DO NOT go to &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://easyfix.unifi.com.my/&quot; href=&quot;https://easyfix.unifi.com.my/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;https://easyfix.unifi.com.my/&lt;/a&gt; or &lt;a class=&quot;markup--anchor markup--p-anchor&quot; data-href=&quot;https://easyfix.unifi.com.my/reconfigure_wifi_netis&quot; href=&quot;https://easyfix.unifi.com.my/reconfigure_wifi_netis&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;https://easyfix.unifi.com.my/reconfigure_wifi_netis&lt;/a&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;4cd4&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot; style=&quot;font-weight: normal;&quot;&gt;It is useless (worth to try but it won’t be helpful enough).&lt;/font&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;8ff7&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot; style=&quot;font-weight: normal;&quot;&gt;You can even call their call-center line at 100 and the best guidance you can get is just to confirm your username and password again and resetting your port. It may work or may not work at all. If it works, you still need to tweak on your own (or worst, wait for their technician to drop by, which may take 1, 2, 3 days or even week after you file your report unless you keep bugging them via SOCMED or phone call if you are in dire need of internet connectivity).&lt;/font&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;1ea9&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot; style=&quot;font-weight: normal;&quot;&gt;Why I stated that you need to tweak on your own. This is because the technician will only install and use the basic setting to set up your router. They won’t do extra miles to ensure that your internet connection is superb. There are a few things you can do to improve your internet connection. Before that, let us do simple tweaking and have a stable connection first.&lt;/font&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;42dc&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot; style=&quot;font-weight: normal;&quot;&gt;There are few links here that might help you in tweaking it (IF it still able to connect to TM Switches PERMANENTLY, but failed to connect to any website).&lt;/font&gt;&lt;/p&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;7b0d&quot;&gt;&lt;a class=&quot;markup--anchor markup--blockquote-anchor&quot; data-href=&quot;https://www.youtube.com/watch?v=CX0PXujZbAs&quot; href=&quot;https://www.youtube.com/watch?v=CX0PXujZbAs&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot; style=&quot;font-weight: normal;&quot;&gt;1. https://www.youtube.com/watch?v=CX0PXujZbAs&lt;/font&gt;&lt;/a&gt;&lt;/blockquote&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;1190&quot;&gt;&lt;a class=&quot;markup--anchor markup--blockquote-anchor&quot; data-href=&quot;https://www.youtube.com/watch?v=Awf4RK5z-V4&amp;amp;app=desktop&quot; href=&quot;https://www.youtube.com/watch?v=Awf4RK5z-V4&amp;amp;app=desktop&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot; style=&quot;font-weight: normal;&quot;&gt;2. https://www.youtube.com/watch?v=Awf4RK5z-V4&amp;amp;app=desktop&lt;/font&gt;&lt;/a&gt;&lt;/blockquote&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;eefe&quot;&gt;&lt;a class=&quot;markup--anchor markup--blockquote-anchor&quot; data-href=&quot;http://hotspotsystem.com.my/index.php?route=pavblog/blog&amp;amp;blog_id=209&quot; href=&quot;http://hotspotsystem.com.my/index.php?route=pavblog/blog&amp;amp;blog_id=209&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot; style=&quot;font-weight: normal;&quot;&gt;3. http://hotspotsystem.com.my/index.php?route=pavblog/blog&amp;amp;blog_id=209&lt;/font&gt;&lt;/a&gt;&lt;/blockquote&gt;&lt;figure class=&quot;graf graf--figure graf--layoutOutsetLeft&quot; name=&quot;75c7&quot;&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;812&quot; data-image-id=&quot;0*U9OaiqMN9PBjgkuQ.png&quot; data-width=&quot;1099&quot; height=&quot;236&quot; src=&quot;https://cdn-images-1.medium.com/max/900/0*U9OaiqMN9PBjgkuQ.png&quot; width=&quot;320&quot; /&gt;&lt;/figure&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;c825&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot;&gt;Well, that shall do it. If the problem persists, just get them to send the technician ASAP and request to change the router. This might be the core problem of failure like mines. That’s it… or you can buy your own router and make sure it is &lt;span class=&quot;markup--strong markup--p-strong&quot;&gt;VDSL2&lt;/span&gt; (for unifi/fiber) ya.&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;d1e8&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot;&gt;The final step is to tweak a little bit more to have a better connection. You may not be needed if you think yours is working fine.&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;92ae&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot;&gt;1. Disable some of the security features. Please, do this IF you are using it for your OWN purpose and not to setup for openly accessible wifi. You may disable firewall, IDS, IPS setting or tweak it to your own need. To do this, you need to login to your router page at 192.168.1.1 and go to security section (normally at Advance tab)&lt;/font&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote class=&quot;graf graf--blockquote&quot; name=&quot;de5e&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot;&gt;2. Change the DNS (from automatic to manual) and follow the following few links&lt;/font&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/h3&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0 0 0 40px; padding: 0px;&quot;&gt;&lt;div class=&quot;separator&quot;&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;5a28&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;blockquote class=&quot;graf graf--pullquote&quot; name=&quot;bf07&quot; style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot;&gt;2.1 Standard TM DNS — &lt;a class=&quot;markup--anchor markup--pullquote-anchor&quot; data-href=&quot;https://community.unifi.com.my/t5/Product-and-Service/DNS-Flag-Day-2019/td-p/18992#&quot; href=&quot;https://community.unifi.com.my/t5/Product-and-Service/DNS-Flag-Day-2019/td-p/18992#&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;https://community.unifi.com.my/t5/Product-and-Service/DNS-Flag-Day-2019/td-p/18992#&lt;/a&gt;&lt;/font&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/h3&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;blockquote style=&quot;border: none; margin: 0 0 0 40px; padding: 0px;&quot;&gt;&lt;blockquote style=&quot;border: none; margin: 0 0 0 40px; padding: 0px;&quot;&gt;&lt;div class=&quot;separator&quot;&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;5a28&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-align: left;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot;&gt;2.2 External DNS — &lt;a class=&quot;markup--anchor markup--pullquote-anchor&quot; data-href=&quot;https://techrakyat.com/tips/best-dns-malaysia/&quot; href=&quot;https://techrakyat.com/tips/best-dns-malaysia/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;https://techrakyat.com/tips/best-dns-malaysia/&lt;/a&gt; and &lt;a class=&quot;markup--anchor markup--pullquote-anchor&quot; data-href=&quot;https://www.soyacincau.com/2018/04/02/cloudflare-public-dns-1-1-1-1-faster-internet/&quot; href=&quot;https://www.soyacincau.com/2018/04/02/cloudflare-public-dns-1-1-1-1-faster-internet/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;https://www.soyacincau.com/2018/04/02/cloudflare-public-dns-1-1-1-1-faster-internet/&lt;/a&gt;&lt;/font&gt;&lt;/span&gt;&lt;/h3&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;div class=&quot;separator&quot;&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;5a28&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;256&quot; data-image-id=&quot;0*P33BYNcyA3PYXmnW.png&quot; data-width=&quot;256&quot; height=&quot;200&quot; src=&quot;https://cdn-images-1.medium.com/max/900/0*P33BYNcyA3PYXmnW.png&quot; width=&quot;200&quot; /&gt;&lt;p class=&quot;graf graf--p&quot; name=&quot;c630&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;font face=&quot;helvetica&quot; size=&quot;2&quot;&gt;Adios&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;/h3&gt;&lt;/div&gt;&lt;h3 class=&quot;graf graf--h3&quot; name=&quot;5a28&quot;&gt;&lt;strong class=&quot;markup--strong markup--h3-strong&quot;&gt;TM Unifi NETIS DL4480V Connectivity Problem&lt;/strong&gt;&lt;/h3&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/2265811848354891452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/2265811848354891452' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/2265811848354891452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/2265811848354891452'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2020/05/solving-internet-router-problem-tm.html' title='Solving Internet Router Problem - TM Unifi NETIS DL4480V'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-5504001823722012977</id><published>2020-04-26T21:49:00.000-07:00</published><updated>2020-04-26T21:49:02.130-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Information Security"/><category scheme="http://www.blogger.com/atom/ns#" term="Software Development"/><category scheme="http://www.blogger.com/atom/ns#" term="Software Security"/><category scheme="http://www.blogger.com/atom/ns#" term="Technology"/><category scheme="http://www.blogger.com/atom/ns#" term="Tips and Trick"/><category scheme="http://www.blogger.com/atom/ns#" term="Web-based application"/><title type='text'>Improving your Telegram Security</title><content type='html'>&lt;section class=&quot;section section--body&quot; name=&quot;58cc&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;
&lt;hr class=&quot;section-divider&quot; /&gt;
&lt;/div&gt;
&lt;div class=&quot;section-content&quot;&gt;
&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;959f&quot;&gt;
Telegram’s user continues to increase and recently it reaches 400 million user per month&lt;/div&gt;
&lt;figure class=&quot;graf graf--figure&quot; name=&quot;9313&quot;&gt;&lt;a href=&quot;https://cdn-images-1.medium.com/max/1600/1*1OD-dur0SfK0qnW1a-ZVdw.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; class=&quot;graf-image&quot; data-height=&quot;672&quot; data-image-id=&quot;1*1OD-dur0SfK0qnW1a-ZVdw.png&quot; data-width=&quot;824&quot; height=&quot;326&quot; src=&quot;https://cdn-images-1.medium.com/max/1600/1*1OD-dur0SfK0qnW1a-ZVdw.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/figure&gt;&lt;div class=&quot;graf graf--p&quot; name=&quot;c85e&quot;&gt;
Since its birth, there are many features added plus friendly API allowing various innovative ideas add-in to its base.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;c85e&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;5eec&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;
&lt;hr class=&quot;section-divider&quot; /&gt;
&lt;/div&gt;
&lt;div class=&quot;section-content&quot;&gt;
&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;d435&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;d435&quot;&gt;
But, having lots of features may also result in lots of possibilities for hacking. One of the many features that may be wrongly used is the Automatic Media Download.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;d435&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;d435&quot;&gt;
As noob @ beginner, many do not realize it until their phone or PC slow due to disk space has shrunk as telegram keeps on automatically download all files.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;d435&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;d435&quot;&gt;
The most scarier is that the auto-play anything including GIF, video, and audio. All this can be used by hackers to insert a code and inject it upon executed/run by telegram.&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;d435&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;0742&quot;&gt;
However, luckily telegram allow us to modify the setting. Here are the steps to change it:&lt;/div&gt;
&lt;ol class=&quot;postList&quot;&gt;
&lt;li class=&quot;graf graf--li&quot; name=&quot;16d4&quot;&gt;Go to your telegram setting and choose Advance&lt;/li&gt;
&lt;/ol&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;1120&quot; data-image-id=&quot;1*QtBPGasAf6nUOsA9WMZ0bg.png&quot; data-width=&quot;754&quot; height=&quot;400&quot; src=&quot;https://cdn-images-1.medium.com/max/1600/1*QtBPGasAf6nUOsA9WMZ0bg.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot; width=&quot;269&quot; /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-size: small; text-align: start;&quot;&gt;Telegram setting&amp;nbsp;window&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;2c97&quot;&gt;
2. At the &lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Advance&lt;/strong&gt; screen, go to &lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Automatic media download&lt;/strong&gt; section&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;1686&quot; data-image-id=&quot;1*9eYSgE_VvWTFd3nLzrsxNQ.png&quot; data-width=&quot;738&quot; height=&quot;640&quot; src=&quot;https://cdn-images-1.medium.com/max/1600/1*9eYSgE_VvWTFd3nLzrsxNQ.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot; width=&quot;280&quot; /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-size: small; text-align: start;&quot;&gt;In the Advance&amp;nbsp;setting&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;4780&quot;&gt;
3. Click &lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;In private chats&lt;/strong&gt;&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;img class=&quot;graf-image&quot; data-height=&quot;952&quot; data-image-id=&quot;1*z4gzTFF9BpEUdnIHyJvGkQ.png&quot; data-width=&quot;594&quot; height=&quot;400&quot; src=&quot;https://cdn-images-1.medium.com/max/1600/1*z4gzTFF9BpEUdnIHyJvGkQ.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot; width=&quot;249&quot; /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-size: small; text-align: start;&quot;&gt;In automatic media download&amp;nbsp;setting&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;6e41&quot;&gt;
4. In the setting, click all the &lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;slide-tick&lt;/strong&gt; to disable it (or you can choose whichever you want to enable or disable). You can even reduce the size to increase the protection rate.&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;6e41&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;4f7d&quot;&gt;
5. Continue the process for all settings within the &lt;strong class=&quot;markup--strong markup--p-strong&quot;&gt;Automatic media download&lt;/strong&gt; section.&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;4f7d&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/section&gt;&lt;section class=&quot;section section--body&quot; name=&quot;d3d1&quot;&gt;&lt;div class=&quot;section-divider&quot;&gt;
&lt;hr class=&quot;section-divider&quot; /&gt;
&lt;/div&gt;
&lt;div class=&quot;section-content&quot;&gt;
&lt;div class=&quot;section-inner sectionLayout--insetColumn&quot;&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;7c09&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;graf graf--p&quot; name=&quot;7c09&quot; style=&quot;text-align: center;&quot;&gt;
That’s all.. you are ready to go and you shall be safe.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/section&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/5504001823722012977/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/5504001823722012977' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/5504001823722012977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/5504001823722012977'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2020/04/improving-your-telegramsecurity.html' title='Improving your Telegram Security'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3322146266378349147.post-8339742157166619636</id><published>2020-04-18T20:50:00.000-07:00</published><updated>2020-04-18T20:50:08.230-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Big Data"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Analysis"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Analytics"/><category scheme="http://www.blogger.com/atom/ns#" term="Data Visualization"/><category scheme="http://www.blogger.com/atom/ns#" term="Tableau"/><title type='text'>Tableau Public - Apple Mobility Data and Dark Mode</title><content type='html'>I&#39;ve been working on 2 visualizations. 1 is based on Apply Mobility Data and the other is based on edited Sample Superstore.&lt;br /&gt;
&lt;br /&gt;
Check it out here.&lt;br /&gt;
&lt;div class=&quot;tableauPlaceholder&quot; id=&quot;viz1587267974591&quot; style=&quot;position: relative;&quot;&gt;
&lt;noscript&gt;&lt;a href=&#39;https://malaysiandeveloper.blogspot.com&#39;&gt;&lt;img alt=&#39; &#39; src=&#39;https://public.tableau.com/static/images/Mo/MobilityTrendAnalysisbasedonDatafromApple/Dashboard1/1_rss.png&#39; style=&#39;border: none&#39; /&gt;&lt;/a&gt;&lt;/noscript&gt;&lt;object class=&quot;tableauViz&quot; style=&quot;display: none;&quot;&gt;&lt;param name=&#39;host_url&#39; value=&#39;https%3A%2F%2Fpublic.tableau.com%2F&#39; /&gt; &lt;param name=&#39;embed_code_version&#39; value=&#39;3&#39; /&gt; &lt;param name=&#39;site_root&#39; value=&#39;&#39; /&gt;&lt;param name=&#39;name&#39; value=&#39;MobilityTrendAnalysisbasedonDatafromApple&amp;#47;Dashboard1&#39; /&gt;&lt;param name=&#39;tabs&#39; value=&#39;no&#39; /&gt;&lt;param name=&#39;toolbar&#39; value=&#39;yes&#39; /&gt;&lt;param name=&#39;static_image&#39; value=&#39;https:&amp;#47;&amp;#47;public.tableau.com&amp;#47;static&amp;#47;images&amp;#47;Mo&amp;#47;MobilityTrendAnalysisbasedonDatafromApple&amp;#47;Dashboard1&amp;#47;1.png&#39; /&gt; &lt;param name=&#39;animate_transition&#39; value=&#39;yes&#39; /&gt;&lt;param name=&#39;display_static_image&#39; value=&#39;yes&#39; /&gt;&lt;param name=&#39;display_spinner&#39; value=&#39;yes&#39; /&gt;&lt;param name=&#39;display_overlay&#39; value=&#39;yes&#39; /&gt;&lt;param name=&#39;display_count&#39; value=&#39;yes&#39; /&gt;&lt;/object&gt;&lt;br /&gt;
Mobility Data based on Apple&#39;s mobility data.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;script type=&quot;text/javascript&quot;&gt;                    var divElement = document.getElementById(&#39;viz1587267974591&#39;);                    var vizElement = divElement.getElementsByTagName(&#39;object&#39;)[0];                    if ( divElement.offsetWidth &gt; 800 ) { vizElement.style.width=&#39;1169px&#39;;vizElement.style.height=&#39;854px&#39;;} else if ( divElement.offsetWidth &gt; 500 ) { vizElement.style.width=&#39;1169px&#39;;vizElement.style.height=&#39;854px&#39;;} else { vizElement.style.width=&#39;100%&#39;;vizElement.style.height=&#39;2077px&#39;;}                     var scriptElement = document.createElement(&#39;script&#39;);                    scriptElement.src = &#39;https://public.tableau.com/javascripts/api/viz_v1.js&#39;;                    vizElement.parentNode.insertBefore(scriptElement, vizElement);                &lt;/script&gt;

&lt;br /&gt;
&lt;div class=&quot;tableauPlaceholder&quot; id=&quot;viz1587268014858&quot; style=&quot;position: relative;&quot;&gt;
&lt;noscript&gt;&lt;a href=&#39;#&#39;&gt;&lt;img alt=&#39; &#39; src=&#39;https://public.tableau.com/static/images/Pa/Paramtest_15865944096250/Dashboard1/1_rss.png&#39; style=&#39;border: none&#39; /&gt;&lt;/a&gt;&lt;/noscript&gt;&lt;object class=&quot;tableauViz&quot; style=&quot;display: none;&quot;&gt;&lt;param name=&#39;host_url&#39; value=&#39;https%3A%2F%2Fpublic.tableau.com%2F&#39; /&gt; &lt;param name=&#39;embed_code_version&#39; value=&#39;3&#39; /&gt; &lt;param name=&#39;site_root&#39; value=&#39;&#39; /&gt;&lt;param name=&#39;name&#39; value=&#39;Paramtest_15865944096250&amp;#47;Dashboard1&#39; /&gt;&lt;param name=&#39;tabs&#39; value=&#39;no&#39; /&gt;&lt;param name=&#39;toolbar&#39; value=&#39;yes&#39; /&gt;&lt;param name=&#39;static_image&#39; value=&#39;https:&amp;#47;&amp;#47;public.tableau.com&amp;#47;static&amp;#47;images&amp;#47;Pa&amp;#47;Paramtest_15865944096250&amp;#47;Dashboard1&amp;#47;1.png&#39; /&gt; &lt;param name=&#39;animate_transition&#39; value=&#39;yes&#39; /&gt;&lt;param name=&#39;display_static_image&#39; value=&#39;yes&#39; /&gt;&lt;param name=&#39;display_spinner&#39; value=&#39;yes&#39; /&gt;&lt;param name=&#39;display_overlay&#39; value=&#39;yes&#39; /&gt;&lt;param name=&#39;display_count&#39; value=&#39;yes&#39; /&gt;&lt;/object&gt;&lt;br /&gt;
Grid on Dark Mode based on Tableau Sample Superstore (edited version)&lt;br /&gt;
&lt;br /&gt;
All visual is available at&amp;nbsp;&lt;a href=&quot;https://public.tableau.com/profile/nurul.haszeli.ahmad#!/&quot;&gt;https://public.tableau.com/profile/nurul.haszeli.ahmad#!/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
All dataset is available at data.world @&amp;nbsp;&lt;a href=&quot;https://data.world/haszeliahmad/data-analysis&quot;&gt;https://data.world/haszeliahmad/data-analysis&lt;/a&gt;&lt;/div&gt;
&lt;script type=&quot;text/javascript&quot;&gt;                    var divElement = document.getElementById(&#39;viz1587268014858&#39;);                    var vizElement = divElement.getElementsByTagName(&#39;object&#39;)[0];                    if ( divElement.offsetWidth &gt; 800 ) { vizElement.style.width=&#39;1000px&#39;;vizElement.style.height=&#39;827px&#39;;} else if ( divElement.offsetWidth &gt; 500 ) { vizElement.style.width=&#39;1000px&#39;;vizElement.style.height=&#39;827px&#39;;} else { vizElement.style.width=&#39;100%&#39;;vizElement.style.height=&#39;727px&#39;;}                     var scriptElement = document.createElement(&#39;script&#39;);                    scriptElement.src = &#39;https://public.tableau.com/javascripts/api/viz_v1.js&#39;;                    vizElement.parentNode.insertBefore(scriptElement, vizElement);                &lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://malaysiandeveloper.blogspot.com/feeds/8339742157166619636/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3322146266378349147/8339742157166619636' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/8339742157166619636'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3322146266378349147/posts/default/8339742157166619636'/><link rel='alternate' type='text/html' href='http://malaysiandeveloper.blogspot.com/2020/04/tableau-public-apple-mobility-data-and.html' title='Tableau Public - Apple Mobility Data and Dark Mode'/><author><name>masteramuk</name><uri>http://www.blogger.com/profile/12086746195841833474</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>