<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: ScienceSoft</title>
    <description>The latest articles on DEV Community by ScienceSoft (@sciencesoft).</description>
    <link>https://dev.to/sciencesoft</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F30732%2F446a9289-50ae-4a03-ac00-174c0ac15aa0.png</url>
      <title>DEV Community: ScienceSoft</title>
      <link>https://dev.to/sciencesoft</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sciencesoft"/>
    <language>en</language>
    <item>
      <title>From Data Silos to Interoperability: How Cloud Platforms Improve Healthcare Collaboration</title>
      <dc:creator>ScienceSoft</dc:creator>
      <pubDate>Fri, 24 Oct 2025 09:29:47 +0000</pubDate>
      <link>https://dev.to/sciencesoft/from-data-silos-to-interoperability-how-cloud-platforms-improve-healthcare-collaboration-1cij</link>
      <guid>https://dev.to/sciencesoft/from-data-silos-to-interoperability-how-cloud-platforms-improve-healthcare-collaboration-1cij</guid>
      <description>&lt;h2&gt;
  
  
  Why Interoperability Matters in Healthcare?
&lt;/h2&gt;

&lt;p&gt;For example, a patient visits a primary care doctor, is referred to a specialist, goes in and out of lab visits, and then winds up in the emergency room. Each provider collects information. But if their systems do not talk to each other, important information can be overlooked. That can result in repeated tests, delayed diagnoses, or even dangerous errors.&lt;br&gt;
In a telemedicine app, the cloud server, consisting of a video streaming service and a data storage and processing module, is connected to other healthcare provider systems (e.g., &lt;a href="https://www.scnsoft.com/healthcare/ehr/development" rel="noopener noreferrer"&gt;EHR&lt;/a&gt;, &lt;a href="https://www.scnsoft.com/healthcare/laboratory-information-system" rel="noopener noreferrer"&gt;LIS&lt;/a&gt;), smart connected devices, and the user interfaces for patients and medical staff.(Source: &lt;a href="https://www.scnsoft.com/healthcare/cloud#telehealth:~:text=In%20a%20telemedicine%20app%2C%20the%20cloud%20server%2C%20consisting%20of%20a%20video%20streaming%20service%20and%20a%20data%20storage%20and%20processing%20module%2C%20is%20connected%20to%20other%20healthcare%20provider%20systems%20%28e.g.%2C%20EHR%2C%20LIS%29%2C%20smart%20connected%20devices%2C%20and%20the%20user%20interfaces%20for%20patients%20and%20medical%20staff." rel="noopener noreferrer"&gt;ScienceSoft&lt;/a&gt;)&lt;br&gt;
Interoperability fixes this problem by allowing data to flow across systems and organizations.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why it matters:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Improved decisions around care&lt;/strong&gt;: Physicians can view their full patient history instead of fragmented bits.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Increased efficiency&lt;/strong&gt;: No duplicate lab testing or unwarranted imaging.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lower costs&lt;/strong&gt;: Sharing data cuts down on waste and bolsters value-based models of care. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Empowerment of the patient&lt;/strong&gt;: Patients have access to all their full records. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In other words, it’s not only tech that has to interoperate.  It is a question of better results and safer care for patients as well as of stronger health systems.&lt;/p&gt;

&lt;h2&gt;
  
  
  Collaboration is Built on Cloud Platforms
&lt;/h2&gt;

&lt;p&gt;So, how do we go from isolated silos to integrated systems? The answer lies in the cloud.&lt;br&gt;
Conventional healthcare IT is built on top of ‘on-premise’ servers, each of which owns its data. These setups make sharing difficult. Cloud-based solutions, on the other hand, make for easy access and security, and scale very well.&lt;/p&gt;

&lt;h3&gt;
  
  
  Here’s the canvas that Cloud provides:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Consolidated data storage&lt;/strong&gt;: A single, secure location for all systems to pull patient records from.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scalability&lt;/strong&gt;: Your data expands, think genomics, imaging, or IoT wearables, and the cloud goes with you.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Live collaboration&lt;/strong&gt;: Providers can share and edit records at the same time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Safe connection&lt;/strong&gt;: Advanced encryption and ad hoc calls can also be compliant (HIPAA, GDPR, etc.)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Disaster recovery&lt;/strong&gt;: Built-in redundancy also means that data doesn’t get lost due to local failure.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For hospitals, clinics, labs, and insurers, the cloud becomes the place where data and collaboration finally meet.&lt;/p&gt;

&lt;h2&gt;
  
  
  Use Cases of Cloud Interoperability
&lt;/h2&gt;

&lt;p&gt;It’s not just the environments that are in transition as a result of cloud-based interoperability, either; it is already converting healthcare.&lt;/p&gt;

&lt;h3&gt;
  
  
  Coordinated Care for Chronic Conditions
&lt;/h3&gt;

&lt;p&gt;Most patients with chronic diseases see more than one provider. Primary doctors, specialists, and pharmacists can share notes, lab results, and treatment plans in the cloud. It de-fragments and provides great continuity of care.&lt;/p&gt;

&lt;h3&gt;
  
  
  Telehealth Integration
&lt;/h3&gt;

&lt;p&gt;Telehealth surged during the pandemic. Providers can plug into EHR systems via cloud platforms, aiding in telehealth delivery. That way, virtual visits don’t become yet another silo but get incorporated into the patient’s longitudinal record.&lt;/p&gt;

&lt;h3&gt;
  
  
  Medical Imaging Collaboration
&lt;/h3&gt;

&lt;p&gt;Medical imaging files are massive, and they do not share well. Cloud technology now enables radiologists to upload scans that other providers can see immediately, even if they’re in different parts of the country. Quicker access is faster diagnosis and treatment.&lt;/p&gt;

&lt;h3&gt;
  
  
  Population Health Management
&lt;/h3&gt;

&lt;p&gt;Public health departments and hospitals could share de-identified cloud-based data to track outbreaks of disease, vaccination rates, or the incidence of chronic diseases. It allows for interventions and policy-making in a proactive manner with mitigation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Technologies Driving Cloud Interoperability
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;APIs (Application Programming Interfaces)&lt;/strong&gt;: These are the protocols that let one system communicate with another. An example would be a lab system that can stream test results into an EHR through API connections.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;FHIR (Fast Healthcare Interoperability Resources)&lt;/strong&gt;: This is an HL7 standard that is designed to help healthcare practitioners organise and exchange data in their systems. A growing number of cloud services have been FHIR-enabled for better interoperability.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data Lakes and Warehouses&lt;/strong&gt;: The cloud enables organizations to save unprocessed quantities of data from multiple sources at a central “lake.” Analysts and A.I. tools can subsequently convert this into valuable information.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Blockchain&lt;/strong&gt;: A handful of systems are trying out the technology to create tamper-resistant, decentralized patient records. Perhaps this is trust and safety at some point.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Challenges and How to Overcome
&lt;/h2&gt;

&lt;p&gt;It may be something new that can change the way you get ready! Of course, any sort of transformation does not come without its share of trials. Cloud interoperability has its own set of roadblocks.&lt;/p&gt;

&lt;h3&gt;
  
  
  Data Security and Privacy
&lt;/h3&gt;

&lt;p&gt;Healthcare data is highly sensitive. Providers fret about breaches and compliance.&lt;br&gt;
&lt;strong&gt;Solution&lt;/strong&gt;: Utilize platforms that are HIPAA, GDPR, and local law compliant. This is why it’s so important to encrypt both data at rest and in transit. Apply role-based access controls.&lt;/p&gt;

&lt;h3&gt;
  
  
  Legacy Systems
&lt;/h3&gt;

&lt;p&gt;Several hospitals are still using outdated EHR systems, platforms that don’t “speak” the standards of today.&lt;br&gt;
&lt;strong&gt;Solution&lt;/strong&gt;: Evolutionary shift with middleware bridging old to new through the cloud and APIs.&lt;/p&gt;

&lt;h3&gt;
  
  
  Cost and Resources
&lt;/h3&gt;

&lt;p&gt;Cloud has a significant infrastructure investment, training, and change management overhead.&lt;br&gt;
&lt;strong&gt;Solution&lt;/strong&gt;: Gradual adoption, beginning with non-critical workloads such as patient portals or imaging, can be useful in cost control as well as establishing confidence.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Road Ahead
&lt;/h2&gt;

&lt;p&gt;Healthcare is creating about 30% of the world’s data, and it is doubling every 73 days (Source: &lt;a href="https://www.researchgate.net/publication/313139938_Volume_and_Value_of_Big_Healthcare_Data" rel="noopener noreferrer"&gt;ResearchGate&lt;/a&gt;). Without interoperability, that torrent of information is useless to providers and ultimately does nothing for patients.&lt;br&gt;
Cloud is the best place to start if we want to break down silos. Cloud-based interoperability aggregates patients’ data from disparate systems and makes them available to multiple organizations, combining open standards to rely on secure infrastructure and leveraging advanced analytics.&lt;/p&gt;

&lt;h2&gt;
  
  
  Author
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Gala Batsishcha, Healthcare IT Consultant, Doctor of Medicine
&lt;/h3&gt;

&lt;p&gt;With 5+ years of hands-on experience as an endocrinologist, Gala precisely understands the needs of healthcare professionals and helps tackle them with advanced IT solutions. Gala worked for 15+ years with major companies like Pfizer, Dr.Reddy's, and Roche and designed pharmaceutical marketing strategies, led brand planning direction, and helped ensure compliant medical communication. At ScienceSoft, Gala’s practical knowledge and understanding of healthcare trends help her create efficient medical IT solutions and propel customers’ business success.&lt;/p&gt;

</description>
      <category>healthcare</category>
      <category>cloud</category>
      <category>interoperability</category>
      <category>collaboration</category>
    </item>
    <item>
      <title>Salesforce.com or a Third-Party Vendor: Choosing a Salesforce Support Provider </title>
      <dc:creator>ScienceSoft</dc:creator>
      <pubDate>Wed, 02 Oct 2019 09:58:33 +0000</pubDate>
      <link>https://dev.to/sciencesoft/salesforce-com-or-a-third-party-vendor-choosing-a-salesforce-support-provider-2k9b</link>
      <guid>https://dev.to/sciencesoft/salesforce-com-or-a-third-party-vendor-choosing-a-salesforce-support-provider-2k9b</guid>
      <description>&lt;p&gt;Salesforce CRM can work for your customer relations in full only when it is regularly adjusted to live business process changes, performance issues &lt;a href="https://www.scnsoft.com/blog/salesforce-performance-stability"&gt;are minimized&lt;/a&gt; and wide user adoption is seen to.&lt;/p&gt;

&lt;p&gt;In the article, we highlight what support services you can get from Salesforce.com and when you’d better seek third-party providers’ help. We also share a list of trustworthy Salesforce support partners able to solve Salesforce issues that stall your business efforts and adapt your Salesforce solution to changing or emerging business needs. &lt;/p&gt;

&lt;h2&gt;
  
  
  Support from Salesforce.com: Plans, their Pricing and Services Included
&lt;/h2&gt;

&lt;p&gt;Currently, there are &lt;a href="https://www.salesforce.com/services/success-plans/overview/"&gt;4 Salesforce support plans&lt;/a&gt; available to users:&lt;br&gt;
&lt;strong&gt;•   Standard&lt;br&gt;
• Premier &lt;br&gt;
• Premier+&lt;br&gt;
• Priority&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  #1 Standard
&lt;/h3&gt;

&lt;p&gt;(2-day response provided 12/5 online, free)&lt;/p&gt;

&lt;p&gt;The Standard support plan includes the following support services free of charge:&lt;br&gt;
• Level-1 support from a Salesforce technical team (answering questions about issues, like system unavailability without offering a workaround).&lt;br&gt;
• &lt;a href="http://pages.mail.salesforce.com/gettingstarted/home/"&gt;Guided Journeys&lt;/a&gt; (an online portal with training programs for different Salesforce products).&lt;br&gt;
• &lt;a href="https://success.salesforce.com/"&gt;Trailblazer Community&lt;/a&gt; (an online community where Salesforce customers and partners can get answers to their questions, share their ideas, and learn the best practices of Salesforce use).&lt;br&gt;
• &lt;a href="https://trailhead.salesforce.com/"&gt;Trailhead&lt;/a&gt; (an online training resource for different users: non-technical users, Salesforce administrators and developers).&lt;br&gt;
• &lt;a href="https://www.salesforce.com/events/"&gt;Events&lt;/a&gt; (Salesforce conferences where users can find out about the latest features of different Salesforce products and the best practices of using Salesforce to reach their business goals).&lt;br&gt;
• &lt;a href="https://www.salesforce.com/events/webinars/"&gt;Interactive Webinars&lt;/a&gt; (online webinars where users can get guidance and tips from Salesforce.com experts on the best practices of using Salesforce products). &lt;/p&gt;

&lt;h3&gt;
  
  
  #2 Premier
&lt;/h3&gt;

&lt;p&gt;(1-hour response to critical cases provided 24/7 by phone &amp;amp; online, 20% of your Salesforce license fees)&lt;/p&gt;

&lt;p&gt;This support plan includes all the services of the previous plan, plus: &lt;br&gt;
• Levels 1-4 support from a Salesforce technical team (from  system unavailability to Level 4 issues, like providing  workarounds for system performance issues and bugs affecting a small number of users).&lt;br&gt;
• Accelerators (the unlimited number of one-to-one coaching sessions with a Salesforce expert to solve specific Salesforce challenges, like managing duplicate records, automating case management, increasing the adoption of new Salesforce features).&lt;br&gt;
• Developer Support (assistance from a Salesforce developer, which implies troubleshooting Salesforce performance issues and reviewing up to 200 lines of Apex and Visualforce code per case created by third-party vendors).&lt;br&gt;
• Success Manager (guidance from a Salesforce expert helping to map customers’ business goals to Salesforce features, and provide a risk mitigation plan to reduce a chance of not achieving  those goals). &lt;/p&gt;

&lt;h3&gt;
  
  
  #3 Premier+
&lt;/h3&gt;

&lt;p&gt;(1-hour response to critical cases provided 24/7 by phone &amp;amp; online, 30% of your Salesforce license fees)&lt;/p&gt;

&lt;p&gt;In addition to the services of the already mentioned plans, this support option includes:&lt;br&gt;
• Admin Assist (help with repetitive CRM tasks, like the creation and maintenance of user profiles/roles, custom and formula fields, workflows and approvals, etc.).&lt;br&gt;
• U.S. Premier Plus (available for an additional price, the service implies that technical support will be delivered by a Salesforce team operating on the US territory).&lt;/p&gt;

&lt;h3&gt;
  
  
  #4 Priority
&lt;/h3&gt;

&lt;p&gt;(15-minute response to critical cases provided 24/7 by phone &amp;amp; online, Salesforce doesn’t disclose the price publically)&lt;/p&gt;

&lt;p&gt;The plan includes all the services of the 3 plans above (except U.S. Premier Plus), plus:&lt;br&gt;
• Proactive Monitoring (available for an additional price, the service includes 24/7 monitoring of a customer’s Salesforce solution to prevent performance and security issues). &lt;br&gt;
• &lt;a href="https://www.salesforce.com/blog/2018/05/salesforce-technical-account-manager.html"&gt;Technical Account Manager&lt;/a&gt; (available for an additional price, the service implies providing an onsite Salesforce expert who ensures continuous guidance on open support cases, helps to improve internal support processes, builds plans to address issues, like technical debt and poor data hygiene, etc.)&lt;/p&gt;

&lt;h2&gt;
  
  
  When Salesforce.com Support won’t Help
&lt;/h2&gt;

&lt;p&gt;Although the technical assistance from Salesforce within the support plans seems quite comprehensive, you’ll have to seek third-party support, in case:&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;&lt;em&gt;You need to introduce massive code-based customizations or tweak your fully custom functionality&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A developer’s help by Salesforce.com within Premier, Premier+ and Priority plans won’t be of use in the following situations:&lt;br&gt;
• Troubleshooting custom third-party applications connected with Salesforce.&lt;br&gt;
• Customizing your Salesforce solution’s UI with JavaScript and HTML.&lt;br&gt;
• Enabling automated retrieving of data from certain objects and fields with Salesforce Object Query Language (SOQL) queries. &lt;br&gt;
• Reviewing more than 200 lines of code (while typical customizations contain thousands of lines).&lt;/p&gt;

&lt;p&gt;In such cases, you need to resort to third-party support. It can be delivered on the basis of monthly subscription fees. If additional support services, not included into a monthly package were provided, you’d be charged following the Time and Material model. &lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;&lt;em&gt;You need ongoing administration of your Salesforce solution&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Third-party vendors can provide the ongoing administration of your Salesforce solution built on Sales, Service, Marketing and other Clouds. For instance, in case of managing your Community Cloud-based customer/partner portal, they may update info on products, good distribution rules that authorized dealers should follow, etc. Third-party administrators can also enhance the usability of your portal by adapting the portal’s pages for mobile UI with HTML and CSS, modifying page layouts to enable easier user access to important portal’s pages, etc. &lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;&lt;em&gt;You need data import and management activities&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Third-party administrators can carry out automated data import (for example, from Excel) and data cleansing, enable duplicate and validation rules to remove duplicate records and maintain standards for your CRM data’s quality.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;&lt;em&gt;You need to provide instructor-led user training on default and custom-built functionality&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Third-party support vendors can provide instructor-led user trainings on the default and custom-buillt functionality of your Salesforce solution. If the solution has custom functionality created with code means (say, a custom application for property management), it’s important that training sessions are led by the vendor who created the functionality. Thus, they will be a source of firsthand info and provide for all-round user adoption. &lt;/p&gt;

&lt;h2&gt;
  
  
  Trusted Third-Party Salesforce Support Providers
&lt;/h2&gt;

&lt;p&gt;Choosing a reliable Salesforce services vendor may turn out to be a long and complex process. To make it simpler for you, we’ve prepared a list of reliable third-party support providers that you may use as a starting point of your search: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;a href="https://www.scnsoft.com/services/salesforce/support"&gt;ScienceSoft&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt; &lt;a href="https://www.capgemini.com/"&gt;Capgemini&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt; &lt;a href="https://appirio.com/"&gt;Appirio&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt; &lt;a href="https://vrpconsulting.com/"&gt;VRP Consulting&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt; &lt;a href="https://www.techmahindra.com/pages/default.aspx"&gt;Tech Mahindra&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The bottom line
&lt;/h2&gt;

&lt;p&gt;To get your Salesforce issues addressed in a cost-effective way, think about sharing your support needs of different levels between different vendors. For instance, you can leverage free user help-desk and user self-learning opportunities from Salesforce.com and make a third-party support vendor responsible for ongoing administration and developer support of your Salesforce solution. &lt;/p&gt;

</description>
      <category>salesforce</category>
      <category>support</category>
      <category>crm</category>
      <category>helpdesk</category>
    </item>
    <item>
      <title>Five weak spots of iOS app security and how to address them</title>
      <dc:creator>ScienceSoft</dc:creator>
      <pubDate>Fri, 25 May 2018 10:29:26 +0000</pubDate>
      <link>https://dev.to/sciencesoft/five-weak-spots-of-ios-app-security-and-how-to-address-them-27d8</link>
      <guid>https://dev.to/sciencesoft/five-weak-spots-of-ios-app-security-and-how-to-address-them-27d8</guid>
      <description>&lt;p&gt;Compared to other mobile platforms, iOS has always had quite a positive image in terms of security. Unlike Android, with its open-source code and hundreds of various hardware producers, Apple retains complete control not only over software, but also over hardware of their mobile devices. That’s why iOS developers have a lower risk of creating a security breach.&lt;br&gt;
Does this imply that, unlike Android, iOS is 100% secure? No, it doesn’t. According to Symantec, iOS is susceptible to all the nine major threat families that include hundreds and thousands of malware variants. Though iOS-powered devices aren’t laid open to attack to the same extent as rooted Android devices, they also have their vulnerabilities that malicious users can take advantage of. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqfiv4qm4rtuhoj654uat.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqfiv4qm4rtuhoj654uat.jpg" alt="Five weak spots of iOS app security and how to address them" width="800" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  ‘Pegasus’ incident
&lt;/h2&gt;

&lt;p&gt;Discovered in 2016, spy software Pegasus, which targeted iOS devices, is still known as the most sophisticated mobile attack. The malware accessed location and authentication data, collected information from iMessage, Viber, WhatsApp, Gmail, Skype, and Facebook apps, as well as tracked messages and calls.&lt;br&gt;
As it was revealed, certain issues in Safari WebKit and the iOS kernel were the reasons why Pegasus was able to infect iOS devices. Apple soon addressed these vulnerabilities in a system update. Yet, Pegasus had enough time to cause quite a stir in the media and make both iOS users and developers realize possible consequences of security breaches.&lt;br&gt;
A &lt;a href="http://www.jgoldassociates.com/White_Papers/Android_in_the_Business_Environment_Whitepaper.pdf" rel="noopener noreferrer"&gt;whitepaper&lt;/a&gt; published later in 2016 provided estimates of losses from data breaches. On average, each stolen confidential record reportedly costs $154, so a relatively small number of 10,000 company’s records can account for $1.54 million. This is a critical loss for any business.&lt;/p&gt;

&lt;h2&gt;
  
  
  Addressing security issues
&lt;/h2&gt;

&lt;p&gt;Only properly designed mobile software can help enterprises avoid the costs of information leak. Below, we’ll look into the five most common iOS app security issues (according to &lt;a href="https://www.owasp.org/index.php/Mobile_Top_10_2016-Top_10" rel="noopener noreferrer"&gt;OWASP’s ranking&lt;/a&gt; of insecure development techniques) and describe how developers should address them.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Wrong platform usage
&lt;/h3&gt;

&lt;p&gt;Often, mobile software vulnerabilities appear because of improper use of certain features. An iOS app can violate official coding guides and practices, contain engineers’ unintentional errors or have chunks of Android- or Windows Phone-specific code. Despite sounding rather innocent, all these issues create serious breaches that can be used by malicious users and allow for code-injection attacks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Secure practices:&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
• Always refer and keep to Apple’s official iOS app security guides and practices.&lt;br&gt;
• Conduct thorough code review to reveal calls for Android/Windows Phone features.&lt;br&gt;
• Make your app validate all input data to avoid XSS attacks.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Insecure data storage
&lt;/h3&gt;

&lt;p&gt;When a device is lost or stolen and gets in the hands of a malicious third party, any improperly stored data is in danger. With a physical access to the device’s file system, a cunning user can create a bug that will infect the device and gather all sensitive data.&lt;br&gt;
The aftermath depends solely on the type of data stored on a device. The original owner can become a victim of fraud, identity theft, or financial loss. If a device is a part of a corporate network, the consequences can be even graver.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Secure practices:&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
• Use Apple’s File Protection mechanism for medium-size data.&lt;br&gt;
• Enable high-level encryption for large-size data.&lt;br&gt;
• Store all sensitive data in Keychain.&lt;br&gt;
• Use secure API for Keychain data.&lt;br&gt;
• Avoid storing credentials in NSUserDefaults: they can be easily extracted.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Compromised communication
&lt;/h3&gt;

&lt;p&gt;Since a mobile device is continuously sending and receiving all sorts of data, great risks also lie in the process of communication. Anything that has to take part in it (a router, a mobile phone tower) or anything that can interfere (a bug on a device or endpoint) can intercept personal sensitive data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Secure practices:&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
• Make SSL/TLS encryption require SSL chain verification. Otherwise, SSL/TLS certification will be open to hijacking.&lt;br&gt;
• Let your app establish connection only after verification to ensure security of the endpoint.&lt;br&gt;
• Thoroughly test your app to make sure it gets only valid certificates.&lt;br&gt;
• Don’t let NSURL calls pass self-signed (potentially dangerous) certificates.&lt;br&gt;
• Implement output encoding on suspicious data.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Unsafe authentication
&lt;/h3&gt;

&lt;p&gt;Certain ways of authentication can be vulnerable as such and create a high risk of a third party intervention, either remote or direct. These ways include authentication methods that are commonly accepted by many users, but in actuality aren’t secure enough on their own.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Secure practices:&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
• Avoid using geolocation or Touch ID for authentication: as explained &lt;a href="https://www.scnsoft.com/blog/3d-face-recognition-to-join-a-list-of-mobile-enabled-biometrics" rel="noopener noreferrer"&gt;in this article&lt;/a&gt;, these types of authentication can be by-passed.&lt;br&gt;
• Always apply server-side authentication, assuming client-side can be by-passed.&lt;br&gt;
• Ask users to choose stronger passwords (minimum 6 characters long and containing both letters and numbers) and avoid PIN-format.&lt;br&gt;
• Don’t make “Remember me” authentication a default option and don’t let it store credentials locally.&lt;br&gt;
• Use device-specific security tokens when possible.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Weak cryptography
&lt;/h3&gt;

&lt;p&gt;According to the App Store regulations, all iOS apps have to be encrypted. However, encryption can turn out weak or flawed. An app with insufficient encryption will have vulnerabilities allowing malicious users to decrypt application code and manipulate it at their will.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Secure practices:&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
• Use long-lasting cryptographic standards and algorithms like ATS and SHA-2 (avoid RC2, MMD4, MD5, SHA-1).&lt;br&gt;
• Don’t store cryptographic keys locally or in the code: they can be extracted.&lt;br&gt;
• Store sensitive data on a secure server, in a container or a keychain.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Apart from following the iOS app security tips mentioned above, it’s crucial to develop an app with the most dangerous conditions in mind. Assume that your app will only be used in public Wi-Fi networks. That your user will be a careless person who sets the simplest passwords. That the device will store sensitive corporate data and will be targeted by skilled hackers. Learn to be security-conscious to the extent where you can be certain your app will stay safe even under these utmost circumstances.&lt;/p&gt;

</description>
      <category>mobile</category>
      <category>software</category>
      <category>ios</category>
      <category>security</category>
    </item>
    <item>
      <title>Kotlin vs. Swift: Are Android and iOS moving towards creating a universal language?</title>
      <dc:creator>ScienceSoft</dc:creator>
      <pubDate>Tue, 22 Aug 2017 18:54:05 +0000</pubDate>
      <link>https://dev.to/sciencesoft/kotlin-vs-swift-are-android-and-ios-moving-towards-creating-a-universal-language</link>
      <guid>https://dev.to/sciencesoft/kotlin-vs-swift-are-android-and-ios-moving-towards-creating-a-universal-language</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F1ckvhgs9qeq92xdaqjas.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F1ckvhgs9qeq92xdaqjas.png" title="Kotlin vs. Swift" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once Kotlin received Google’s support, the sheer excitement of Kotlin fans wasn’t the only reaction to follow. Those not familiar with Kotlin were quite concerned about its compatibility/interoperability level with Java, the average time necessary to get the hang of it, as well as the &lt;a href="https://www.scnsoft.com/blog/kotlin-development-what-you-need-to-know-about-androids-new-official-language" rel="noopener noreferrer"&gt;advantages of using Kotlin&lt;/a&gt; in general.&lt;/p&gt;

&lt;p&gt;In their attempts to explain and introduce the language in the shortest and clearest way possible, many Kotlin developers referred to a 3-year-old parallel between Kotlin and the second official language of iOS – Swift. Calling Kotlin “the Swift of Android” did make things easier and helped to create an image for the language. Yet this image also provoked &lt;a href="https://blog.mosheberman.com/swift-is-not-like-kotlin/" rel="noopener noreferrer"&gt;arguments&lt;/a&gt; in the iOS community, as some iOS developers didn’t find the comparison flattering and saw Kotlin as a mere copycat.&lt;/p&gt;

&lt;p&gt;At the very least, it should be noted that while Swift appeared in 2013, Kotlin originated back in 2011. Hence, even though comparing Kotlin to Swift (in this exact order) can be convenient due to Swift’s earlier introduction to a wide audience, any â€˜copycat’ attitudes towards Kotlin aren’t justified. &lt;br&gt;
Still, does the comparison stand? If yes, how far does the similarity stretch? And does its existence hint at the fact that delivering apps for both iOS and Android natively can become easier and faster in the future? ScienceSoft's huge experience in &lt;a href="https://www.scnsoft.com/services/mobile-app-development" rel="noopener noreferrer"&gt;mobile app development services&lt;/a&gt; allows to speculate at this point. Let’s look into it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Syntax
&lt;/h2&gt;

&lt;p&gt;The syntax of Swift doesn’t just resemble that of Kotlin: in small chunks of code there can be up to &lt;a href="http://angelolloqui.com/blog/38-Swift-vs-Kotlin-for-real-iOS-Android-apps" rel="noopener noreferrer"&gt;77% string similarity&lt;/a&gt;. Major differences can be reduced to the table below:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Kotlin&lt;/th&gt;
&lt;th&gt;Swift&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;fun&lt;/td&gt;
&lt;td&gt;func&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;val&lt;/td&gt;
&lt;td&gt;let&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;null&lt;/td&gt;
&lt;td&gt;nil&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;trait&lt;/td&gt;
&lt;td&gt;protocol&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;constructor&lt;/td&gt;
&lt;td&gt;init&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;:&lt;/td&gt;
&lt;td&gt;-&amp;gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Any&lt;/td&gt;
&lt;td&gt;AnyObject&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;!!&lt;/td&gt;
&lt;td&gt;!&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Basics, classes and functions all have very similar ways of expression. Unlike Objective-C’s, Swift’s method calls are similar to those of Java and Kotlin, with their namespace system and dot-notation style. For example, here’s what function call looks like in the two languages:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Kotlin&lt;/th&gt;
&lt;th&gt;Swift&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;fun forecast(day: String, weather: String): String {&lt;/td&gt;
&lt;td&gt;func forecast(_ day: String, _ weather: String) -&amp;gt; String {&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;return "Today is $day, it's $weather."&lt;/td&gt;
&lt;td&gt;return "Today is \(day), it's \(weather)."&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;forecast("Monday", "Raining")&lt;/td&gt;
&lt;td&gt;forecast("Monday", "Raining")&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;And this is how classes are declared in both:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Kotlin&lt;/th&gt;
&lt;th&gt;Swift&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;class Residence {&lt;/td&gt;
&lt;td&gt;class Residence {&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;var numberOfRooms = 0&lt;/td&gt;
&lt;td&gt;var numberOfRooms = 0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;fun Description() =&lt;/td&gt;
&lt;td&gt;func Description() -&amp;gt; String {&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;"A house with $numberOfRooms."&lt;/td&gt;
&lt;td&gt;return "A house with \(numberOfRooms)."&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Many other examples can be found in this &lt;a href="http://nilhcem.com/swift-is-like-kotlin/" rel="noopener noreferrer"&gt;article&lt;/a&gt;, and if they tell us something, it is that both languages share the initial purpose of staying as concise and transparent as possible, making lives of developers easier. Kotlin’s and Swift’s syntax systems are quite effective in that regard, as they are appreciated by development teams for their elegancy. &lt;/p&gt;

&lt;h2&gt;
  
  
  Security
&lt;/h2&gt;

&lt;p&gt;Although both Swift and Kotlin are strong and static in terms of typing, they also allow work with dynamic types. This way, the languages stay concise and flexible, while allowing early elimination of bugs and mismatches. Therefore, they are considered highly secure and especially reliable for big projects.&lt;br&gt;
Apart from that, the two languages combine approaches to handling optional values and null/nil safety with either Safe Navigation Operator ? or Option types. The ? precaution is expressed in almost the same manner in both Kotlin and in Swift:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Kotlin&lt;/th&gt;
&lt;th&gt;Swift&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;val example: String? = null&lt;/td&gt;
&lt;td&gt;var example: String? = nil&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Features
&lt;/h2&gt;

&lt;p&gt;Besides null (nil) safety, functions and classes, Kotlin and Swift have multiple similar features, including &lt;em&gt;constants, variables, generics, protocols (traits), enumerated types, any (anyobject), error handling&lt;/em&gt; and others. Some of the features implemented in the two languages share the approach, but are called differently due to the original language these features go back to.&lt;/p&gt;

&lt;p&gt;For instance, in Kotlin one can find Java’s &lt;strong&gt;lambda&lt;/strong&gt; expressions (which, by the way, are highly effective but aren’t available for Java Android development). In Swift these are &lt;strong&gt;blocks&lt;/strong&gt; or &lt;strong&gt;closures&lt;/strong&gt;, the terms from Objective-C. The way both expressions are called into code is as similar, as the way they work.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Kotlin&lt;/th&gt;
&lt;th&gt;Swift&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;{&lt;/td&gt;
&lt;td&gt;{ _in&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;println("Lambda Expression")&lt;/td&gt;
&lt;td&gt;print("Closure Expression")&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The feature known as &lt;strong&gt;computed properties&lt;/strong&gt; in Swift, which is a specific property declaration with a â€˜get’ call, is enabled in Kotlin as well:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Kotlin&lt;/th&gt;
&lt;th&gt;Swift&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;class Animal(&lt;/td&gt;
&lt;td&gt;class Animal {&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;var Genus: String,&lt;/td&gt;
&lt;td&gt;var Genus : String&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;var Species: String) {&lt;/td&gt;
&lt;td&gt;var Species : String&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;val binomialName: String&lt;/td&gt;
&lt;td&gt;var binomialName: String {&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;get() = "$Genus $Species"&lt;/td&gt;
&lt;td&gt;get {&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;td&gt;return "\(Genus) \(Species)"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Name parameters&lt;/strong&gt; (or named arguments) are also used in both languages:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Kotlin&lt;/th&gt;
&lt;th&gt;Swift&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;fun daysoff(vacation: Int, weekends: Int): Int = vacation + weekends&lt;/td&gt;
&lt;td&gt;func daysoff(vacation: Int, weekends: Int) -&amp;gt; Int {&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;return vacation + weekends&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;}&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;daysoff(5, weekends = 8)&lt;/td&gt;
&lt;td&gt;daysoff(vacation: 5, weekends: 8)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;In fact, instead of listing the features that exist in both languages, it would be easier to list those that don’t. Namely, only Kotlin supports: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  class import, &lt;/li&gt;
&lt;li&gt;  primary constructors and data classes, &lt;/li&gt;
&lt;li&gt;  @annotations.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;At the same time, unlike Kotlin, Swift has:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  tuples, &lt;/li&gt;
&lt;li&gt;  typealias, &lt;/li&gt;
&lt;li&gt;  guard statement.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Meaning behind similarities
&lt;/h2&gt;

&lt;p&gt;The two languages clearly share the ideology, as they solve the same problems created by their ancestor languages: they are less verbose and limited in functions, more readable and convenient to work with. At the same time, both Kotlin and Swift stay interoperable with Java and Objective-C respectively, which allows using them in new projects as well as in maintenance of old ones.&lt;/p&gt;

&lt;p&gt;What’s more, the strong resemblance of the two languages can aid in native development of one app for both iOS and Android. This isn’t to say the apps on both platforms can share one code, of course, since the languages and OS-specific libraries aren’t identical. Still, the approaches to application logic and functionality can be very similar, thanks to syntactical and functional similarity between Swift and Kotlin. This can make development, testing and maintenance faster and easier.&lt;/p&gt;

&lt;h2&gt;
  
  
  Universal language for iOS and Android?
&lt;/h2&gt;

&lt;p&gt;In theory, Google could have already accepted Swift as its official language instead of Kotlin; there were even rumors surrounding this possibility back in 2016. Such a move might have not created a situation where any cross-platform development tools became irrelevant, but the margin between the two platforms would have certainly become blurry.&lt;/p&gt;

&lt;p&gt;However, such a step would have also been unreasonable, and not just because of business competitiveness. Although Swift and Kotlin are similar, what they resemble most are their predecessors. In other words, Swift and Kotlin are bridging the gap between Objective-C and Java. Yet a shift from Java to Kotlin is still more natural and smooth than that from Java to Swift.&lt;/p&gt;

&lt;p&gt;In general, the thought of adjusting to something new doesn’t appeal to everyone; some developers take their time to give a new language a go, just like it was with the &lt;a href="https://www.scnsoft.com/blog/why-you-should-consider-developing-your-ios-app-on-swift" rel="noopener noreferrer"&gt;adoption of Swift&lt;/a&gt;. To make sure the transition would be less of an ordeal means ensuring the language will eventually catch on, and for a new language it is the first and foremost.&lt;/p&gt;

&lt;h2&gt;
  
  
  Parting thought
&lt;/h2&gt;

&lt;p&gt;As mobile development constantly evolves, so does technology. That’s why in 5-10 years both Kotlin and Swift can become something entirely different. There is no telling whether the languages will continue to bridge the gap between each other. Still, as both iOS and Android are searching for the most convenient, secure and fast mobile development tool, they just might end up speaking the same language one day.&lt;/p&gt;

</description>
      <category>mobiledevelopment</category>
      <category>ios</category>
      <category>kotlin</category>
      <category>swift</category>
    </item>
  </channel>
</rss>
