<?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: Okyza Maherdy Prabowo</title>
    <description>The latest articles on DEV Community by Okyza Maherdy Prabowo (@okyzaprabowo).</description>
    <link>https://dev.to/okyzaprabowo</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%2F363962%2F4d90a930-52c2-4c0d-8ce1-a7e0eb65d6f1.png</url>
      <title>DEV Community: Okyza Maherdy Prabowo</title>
      <link>https://dev.to/okyzaprabowo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/okyzaprabowo"/>
    <language>en</language>
    <item>
      <title>Shortcomings of Current Smart City Platforms and Their Role in Sustainable &amp; Resilient Cities</title>
      <dc:creator>Okyza Maherdy Prabowo</dc:creator>
      <pubDate>Sun, 20 Oct 2024 13:00:21 +0000</pubDate>
      <link>https://dev.to/okyzaprabowo/shortcomings-of-current-smart-city-platforms-and-their-role-in-sustainable-resilient-cities-4c2l</link>
      <guid>https://dev.to/okyzaprabowo/shortcomings-of-current-smart-city-platforms-and-their-role-in-sustainable-resilient-cities-4c2l</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;Introduction&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;In recent years, smart city platforms have emerged as essential infrastructures for urban development. These platforms, leveraging IoT, big data, and AI, are designed to enhance urban services, improve efficiency, and offer a more connected living experience. However, while smart city platforms have brought many benefits, they still face several shortcomings, particularly when it comes to meeting the needs of sustainable and resilient cities.&lt;/p&gt;

&lt;p&gt;In this article, we will explore these shortcomings and explain how smart city platforms need to evolve to better align with the goals of sustainability and resilience. We will focus on four key areas: technology dependence, interoperability and flexibility, data privacy and security, and citizen participation.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Technology Dependence&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Shortcoming in Smart City Platforms:&lt;/strong&gt;&lt;br&gt;
Smart city platforms are highly dependent on technology, particularly on IoT devices, constant data connectivity, and real-time data processing to function efficiently. While this technological reliance provides many benefits, it also poses significant risks. A city that depends too much on uninterrupted technology can face system failures, cyberattacks, or power outages that cripple essential city services.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sustainable City Needs:&lt;/strong&gt;&lt;br&gt;
In a sustainable city, the goal is to minimize energy consumption and environmental impact. Smart city platforms need to incorporate low-energy technologies and renewable energy sources. Systems should also be designed to continue operating at a reduced capacity without full connectivity or high energy usage, ensuring environmental sustainability.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Resilient City Needs:&lt;/strong&gt;&lt;br&gt;
Resilient cities need platforms that can operate during crises such as natural disasters or power outages. This requires systems with fail-safes and backup mechanisms that allow for manual operation when necessary. These cities must prioritize technological resilience, ensuring that critical services such as healthcare and emergency response remain functional even when connectivity is compromised.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Interoperability and Flexibility&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Shortcoming in Smart City Platforms:&lt;/strong&gt;&lt;br&gt;
Many smart city platforms rely on proprietary systems that lack interoperability between different vendors and technologies. This results in technological silos, where one city department or system cannot effectively communicate or share data with another, limiting the overall potential of the platform.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sustainable City Needs:&lt;/strong&gt;&lt;br&gt;
To meet the needs of sustainable cities, smart city platforms must embrace open standards that allow for flexible integration of different systems and technologies. Sustainability requires the ability to seamlessly incorporate new eco-friendly solutions, such as smart grids or renewable energy systems, without the limitations of proprietary technology.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Resilient City Needs:&lt;/strong&gt;&lt;br&gt;
In resilient cities, interoperability is critical. During emergencies, systems from different city sectors—such as energy, transportation, and healthcare—must work together seamlessly to ensure a coordinated response. Additionally, platforms need to be modular and scalable, allowing cities to quickly adapt to changing situations or integrate new technologies when responding to crises.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Data Privacy and Security&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Shortcoming in Smart City Platforms:&lt;/strong&gt;&lt;br&gt;
Smart city platforms collect massive amounts of data through IoT devices, which raises significant concerns about data privacy and security. Many smart cities lack robust data protection measures, making them vulnerable to cyberattacks and data breaches. Furthermore, improper data management can lead to privacy violations, as cities gather sensitive information about citizens' activities, health, and movements.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sustainable City Needs:&lt;/strong&gt;&lt;br&gt;
Sustainable cities must prioritize ethical data collection and transparency. Citizens need to understand how their data is being used, and smart city platforms should comply with data privacy regulations like GDPR. Sustainable cities should also practice data minimization, only collecting what is necessary and ensuring that data is stored and used securely.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Resilient City Needs:&lt;/strong&gt;&lt;br&gt;
In resilient cities, cybersecurity must be a top priority. Protecting critical infrastructure, such as energy grids, water systems, and emergency services, is essential. Data security measures must be robust enough to withstand potential cyberattacks during crises, ensuring that personal data and essential city functions remain protected even under stressful circumstances.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Citizen Participation&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Shortcoming in Smart City Platforms:&lt;/strong&gt;&lt;br&gt;
Smart city platforms tend to focus on technological efficiency and often overlook citizen engagement. As a result, citizens become passive recipients of services, with limited opportunities to provide feedback or actively participate in city governance. Additionally, open data is often not accessible to the public, reducing transparency and limiting citizens' ability to engage in civic improvement initiatives.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sustainable City Needs:&lt;/strong&gt;&lt;br&gt;
Sustainable cities rely heavily on citizen involvement to drive change, such as community-led initiatives for energy savings, recycling programs, and local governance. Platforms must provide user-friendly interfaces where citizens can actively engage, contribute ideas, and access open data to understand the city's operations and impact.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Resilient City Needs:&lt;/strong&gt;&lt;br&gt;
In resilient cities, citizen engagement is critical, particularly in disaster preparedness and recovery efforts. Platforms need to facilitate real-time communication between citizens and local authorities, allowing for rapid responses during emergencies. Empowering citizens to be actively involved in urban resilience ensures that recovery processes are smoother and more effective.&lt;/p&gt;




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

&lt;p&gt;While smart city platforms have made significant strides in improving urban efficiency and connectivity, they still face important challenges that prevent them from fully addressing the needs of sustainable and resilient cities. By addressing key shortcomings like technology dependence, interoperability, data privacy, and citizen engagement, smart city platforms can evolve into more holistic solutions capable of promoting long-term sustainability and resilience.&lt;/p&gt;

&lt;p&gt;By focusing on flexible, ethical, and resilient technologies, cities can not only improve their day-to-day operations but also ensure that they are better prepared to handle future challenges, from climate change to cybersecurity threats.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;References:&lt;/strong&gt;
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Aldoseri, A., Al-Khalifa, K. N., &amp;amp; Hamouda, A. M. (2023). Re-Thinking Data Strategy and Integration for Artificial Intelligence: Concepts, Opportunities, and Challenges. Applied Sciences, 13(12), 7082.&lt;/li&gt;
&lt;li&gt;Cui, L., Xie, G., Qu, Y., Gao, L., &amp;amp; Yang, Y. (2021). Security and privacy in smart cities: Challenges and opportunities. IEEE Access, 6, 46134–46145.&lt;/li&gt;
&lt;li&gt;Feng, S., Zhang, R., &amp;amp; Li, G. (2022). Environmental decentralization, digital finance, and green technology innovation. Structural Change and Economic Dynamics, 61, 70–83.&lt;/li&gt;
&lt;li&gt;Gao, C., Wang, F., Hu, X., &amp;amp; Martinez, J. (2023). Research on Sustainable Design of Smart Cities Based on the Internet of Things and Ecosystems. Sustainability, 15(8), 6546.&lt;/li&gt;
&lt;li&gt;Kirimtat, A., Krejcar, O., Kertesz, A., &amp;amp; Tasgetiren, M. F. (2020). Future Trends and Current State of Smart City Concepts: A Survey. IEEE Access, 8, 86448–86467.&lt;/li&gt;
&lt;li&gt;Lopez, L. J. R., &amp;amp; Castro, A. I. G. (2021). Sustainability and resilience in smart city planning: A review. Sustainability, 13(1), 297.&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>trans</category>
      <category>devdiscuss</category>
      <category>pwl</category>
    </item>
    <item>
      <title>Understanding the Description of Discrete-Event Simulation</title>
      <dc:creator>Okyza Maherdy Prabowo</dc:creator>
      <pubDate>Wed, 15 May 2024 02:06:32 +0000</pubDate>
      <link>https://dev.to/okyzaprabowo/understanding-the-description-of-discrete-event-simulation-4472</link>
      <guid>https://dev.to/okyzaprabowo/understanding-the-description-of-discrete-event-simulation-4472</guid>
      <description>&lt;p&gt;Discrete-event simulation stands as a cornerstone in various fields, from manufacturing to healthcare and beyond. At its core, it's a powerful computational tool used to model and analyze complex systems characterized by discrete, asynchronous events. Unlike continuous simulations, which track changes over time, discrete-event simulations focus on the occurrences of events at specific points in time. This method allows for a detailed examination of system behavior, resource utilization, and performance metrics, aiding decision-making processes and system optimization.&lt;/p&gt;

&lt;p&gt;One of the key strengths of discrete-event simulation lies in its versatility. It can model a wide array of systems, ranging from simple queueing systems to intricate supply chains or transportation networks. By abstracting real-world processes into a digital framework, analysts can experiment with various scenarios, test hypotheses, and explore the consequences of different decisions without the cost and risk associated with real-world experimentation. This flexibility makes discrete-event simulation an invaluable tool for both research and practical applications.&lt;/p&gt;

&lt;p&gt;Another significant advantage of discrete-event simulation is its ability to capture the stochastic nature of many real-world systems. Events in these systems often occur randomly, influenced by numerous factors such as arrival rates, processing times, and resource availability. Discrete-event simulation allows for the incorporation of probabilistic elements, enabling analysts to study how uncertainty affects system performance and to assess the robustness of proposed solutions. This stochastic modeling capability provides a more realistic representation of complex systems and enhances the reliability of simulation results.&lt;/p&gt;

&lt;p&gt;Moreover, discrete-event simulation facilitates the optimization of system design and operation. By simulating different configurations and strategies, analysts can identify bottlenecks, inefficiencies, and opportunities for improvement within a system. Through iterative experimentation, they can refine parameters, allocate resources more effectively, and devise strategies to enhance performance, minimize costs, or maximize throughput. This optimization process empowers decision-makers to make informed choices that lead to better outcomes and competitive advantages in various domains.&lt;/p&gt;

&lt;p&gt;In addition to its practical applications, discrete-event simulation also serves as a valuable educational and research tool. It enables students and researchers to explore theoretical concepts, experiment with modeling techniques, and gain insights into the dynamics of complex systems in a controlled environment. By providing a platform for hands-on learning and experimentation, discrete-event simulation fosters a deeper understanding of system behavior, problem-solving skills, and critical thinking abilities, preparing individuals for challenges in academia and industry alike.&lt;/p&gt;

&lt;p&gt;In conclusion, discrete-event simulation stands as a versatile and powerful tool for modeling, analyzing, and optimizing complex systems across diverse domains. Its ability to capture the dynamics of discrete, stochastic events, its versatility in modeling various systems, its capacity for optimization, and its role in education and research highlight its significance in today's data-driven world. As technology advances and the complexity of systems continues to grow, discrete-event simulation will remain a valuable asset for decision-makers, analysts, and researchers seeking to understand and improve the systems that shape our world.&lt;/p&gt;

</description>
      <category>learning</category>
      <category>beginners</category>
      <category>news</category>
    </item>
    <item>
      <title>Simulating NMEA Data with nmeasim in Python</title>
      <dc:creator>Okyza Maherdy Prabowo</dc:creator>
      <pubDate>Sat, 11 May 2024 01:52:02 +0000</pubDate>
      <link>https://dev.to/okyzaprabowo/simulating-nmea-data-with-nmeasim-in-python-4o7n</link>
      <guid>https://dev.to/okyzaprabowo/simulating-nmea-data-with-nmeasim-in-python-4o7n</guid>
      <description>&lt;p&gt;In this tutorial, we'll learn how to simulate NMEA (National Marine Electronics Association) data using the nmeasim library in Python. This library is useful for testing GPS-related applications without the need for real GPS hardware. We'll cover the following topics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Installation of nmeasim&lt;/li&gt;
&lt;li&gt;Basic Usage of nmeasim for GPS Data Simulation &lt;/li&gt;
&lt;li&gt;Customizing Simulation Parameters &lt;/li&gt;
&lt;li&gt;Retrieving Simulated Data&lt;/li&gt;
&lt;li&gt;Example Application: Plotting Simulated GPS Data&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;1. Installation of nmeasim&lt;/strong&gt;&lt;br&gt;
First, you need to install the nmeasim library. You can install it via pip:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;pip install nmeasim
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;2. Basic Usage of nmeasim for GPS Data Simulation&lt;/strong&gt;&lt;br&gt;
Let's start by importing the necessary modules and initializing a simulator object:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;from nmeasim.simulator import Simulator
sim = Simulator()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;3. Customizing Simulation Parameters&lt;/strong&gt;&lt;br&gt;
You can customize various parameters of the simulated GPS data. Here's an example of setting some parameters:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;with sim.lock:
    sim.gps.output = ('GGA', 'RMC')  # Specify which NMEA sentences to output
    sim.gps.num_sats = 10  # Set the number of satellites
    sim.gps.lat = 37.7749  # Set latitude
    sim.gps.lon = -122.4194  # Set longitude
    sim.gps.altitude = 50  # Set altitude in meters
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;4. Retrieving Simulated Data&lt;/strong&gt;&lt;br&gt;
To retrieve simulated data, you can use the get_output method of the simulator. For example, to get data for 3 seconds:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;data = list(sim.get_output(3))
print(data)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;5. Example Application: Plotting Simulated GPS Data&lt;/strong&gt;&lt;br&gt;
As an example application, let's plot the simulated GPS data on a map. We'll use the matplotlib library for plotting:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import matplotlib.pyplot as plt

# Extract latitude and longitude from the simulated data
latitudes = [sentence['latitude'] for sentence in data]
longitudes = [sentence['longitude'] for sentence in data]

# Plot the data on a map
plt.plot(longitudes, latitudes, 'bo-')
plt.xlabel('Longitude')
plt.ylabel('Latitude')
plt.title('Simulated GPS Data')
plt.grid(True)
plt.show()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This will plot the simulated GPS data points on a map.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
In this tutorial, we've learned how to simulate NMEA data using the nmeasim library in Python. We covered basic usage, customization of simulation parameters, retrieving simulated data, and an example application of plotting simulated GPS data. This library is valuable for testing GPS-related software and applications in a controlled environment. Experiment with different parameters and integrate simulated data into your projects for testing and development purposes.&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>programming</category>
      <category>python</category>
      <category>learning</category>
    </item>
    <item>
      <title>Introduction to Data Distribution Unit</title>
      <dc:creator>Okyza Maherdy Prabowo</dc:creator>
      <pubDate>Wed, 08 May 2024 23:31:58 +0000</pubDate>
      <link>https://dev.to/okyzaprabowo/introduction-to-data-distribution-unit-4nja</link>
      <guid>https://dev.to/okyzaprabowo/introduction-to-data-distribution-unit-4nja</guid>
      <description>&lt;p&gt;In maritime applications, NMEA (National Marine Electronics Association) format is widely used for data exchange between various navigation and communication equipment onboard vessels. NMEA messages are ASCII-based and are typically transmitted over serial connections (RS-232 or NMEA 0183) between devices like GPS receivers, autopilots, radars, and chart plotters.&lt;/p&gt;

&lt;p&gt;The data distribution unit in maritime using NMEA format typically involves the transmission and reception of NMEA messages. These messages contain information such as GPS position, speed over ground, heading, depth, wind speed, and other relevant navigational data. The data distribution unit acts as a hub, receiving NMEA messages from various sensors and devices on the vessel and distributing them to other systems or equipment that require the information.&lt;/p&gt;

&lt;p&gt;Some common NMEA sentences used for data distribution in maritime applications include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GGA (Global Positioning System Fix Data): Provides essential fix data such as latitude, longitude, altitude, and time.&lt;/li&gt;
&lt;li&gt;RMC (Recommended Minimum Navigation Information): Provides essential GPS data including latitude, longitude, speed over ground, course over ground, and time.&lt;/li&gt;
&lt;li&gt;GLL (Geographic Position - Latitude/Longitude): Provides latitude and longitude data.&lt;/li&gt;
&lt;li&gt;VTG (Track Made Good and Ground Speed): Provides information about the speed over ground and course over ground.&lt;/li&gt;
&lt;li&gt;HDG (Heading, Deviation, Variation): Provides information about the vessel's heading.&lt;/li&gt;
&lt;li&gt;DBT (Depth Below Transducer): Provides depth information.&lt;/li&gt;
&lt;li&gt;MWV (Wind Speed and Angle): Provides information about wind speed and angle.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The data distribution unit in maritime applications typically collects these NMEA messages from various sensors and systems, processes them as needed, and then distributes them to navigation displays, chart plotters, radar systems, and other equipment where the data is required for navigation, situational awareness, and decision-making.&lt;/p&gt;

</description>
      <category>learning</category>
      <category>computerscience</category>
      <category>beginners</category>
      <category>news</category>
    </item>
    <item>
      <title>Design Research Methodology in Information Technology</title>
      <dc:creator>Okyza Maherdy Prabowo</dc:creator>
      <pubDate>Wed, 08 May 2024 03:27:37 +0000</pubDate>
      <link>https://dev.to/okyzaprabowo/design-research-methodology-in-information-technology-3mgc</link>
      <guid>https://dev.to/okyzaprabowo/design-research-methodology-in-information-technology-3mgc</guid>
      <description>&lt;p&gt;Metodologi riset desain (&lt;u&gt;&lt;em&gt;Design Research Methodology&lt;/em&gt;&lt;/u&gt;) adalah pendekatan sistematis untuk melakukan penelitian dalam konteks desain. Ini melibatkan langkah-langkah yang terorganisir dan strategis untuk memahami masalah, membangun solusi, dan mengevaluasi kinerja atau efektivitas desain tersebut. Metodologi riset desain sering digunakan dalam berbagai bidang termasuk desain produk, desain grafis, desain web, dan lainnya.&lt;/p&gt;

&lt;p&gt;Beberapa langkah umum dalam metodologi riset desain termasuk:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Pemahaman masalah: Identifikasi masalah atau kebutuhan yang ingin dipecahkan melalui desain.&lt;br&gt;
Studi literatur: Melakukan tinjauan literatur untuk memahami konteks dan penelitian terkait yang telah ada.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Penelitian lapangan: Mengumpulkan data dari pengguna potensial atau pemangku kepentingan melalui wawancara, survei, atau observasi langsung.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Analisis dan sintesis data: Menganalisis data yang terkumpul untuk mengidentifikasi pola, tren, dan kebutuhan yang relevan.&lt;br&gt;
Pengembangan konsep: Membangun ide-ide dan konsep desain yang memecahkan masalah yang diidentifikasi.&lt;br&gt;
Prototyping: Membuat prototipe dari solusi desain untuk diuji dan dievaluasi.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Evaluasi dan iterasi: Menguji prototipe dengan pengguna akhir untuk mengevaluasi kinerja dan pengalaman pengguna, kemudian melakukan iterasi desain berdasarkan umpan balik yang diterima.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Metodologi riset desain sering kali melibatkan pendekatan partisipatif, di mana pengguna atau pemangku kepentingan langsung terlibat dalam proses desain. Ini membantu memastikan bahwa solusi yang dihasilkan benar-benar memenuhi kebutuhan dan ekspektasi mereka. Metode yang digunakan dalam riset desain dapat bervariasi tergantung pada konteks proyek, target pengguna, dan tujuan desain yang ingin dicapai.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Berikut adalah contoh penerapan design research methodology dalam ilmu komputer:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pengembangan Antarmuka Pengguna (UI/UX Design):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Problem Definition: Tim desain memiliki masalah dengan tingkat konversi yang rendah pada aplikasi mobile mereka.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Research Planning: Mereka merencanakan untuk melakukan penelitian untuk memahami mengapa pengguna tidak terlibat dengan antarmuka pengguna aplikasi mereka.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data Collection: Melakukan wawancara dengan pengguna yang ada, serta menganalisis data pengguna dan perilaku pengguna dari aplikasi.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data Analysis: Menganalisis wawancara dan data pengguna untuk mengidentifikasi masalah utama dan kesempatan perbaikan.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Insight Generation: Menghasilkan wawasan tentang preferensi pengguna, hambatan, dan kebutuhan yang belum terpenuhi.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Prototyping and Testing: Berdasarkan wawasan, mereka membuat prototipe baru dari antarmuka pengguna dan mengujinya dengan pengguna untuk mendapatkan umpan balik.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Iteration: Iterasi desain berdasarkan umpan balik pengguna, terus menguji dan memperbaiki prototipe sampai mereka mencapai solusi yang optimal.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Documentation and Reporting: Dokumentasi langkah-langkah penelitian, temuan, dan rekomendasi dalam laporan untuk tim pengembangan.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pengembangan Perangkat Lunak (Software Development):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Problem Definition: Tim pengembangan perangkat lunak memiliki tantangan dengan tingkat retensi pengguna yang rendah pada platform mereka.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Research Planning: Mereka merencanakan penelitian untuk memahami alasan di balik tingkat retensi yang rendah dan bagaimana meningkatkannya.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data Collection: Mengumpulkan data dari pengguna melalui survei online, analisis log, dan wawancara pengguna.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data Analysis: Menganalisis data untuk mengidentifikasi pola dan faktor-faktor yang mempengaruhi retensi pengguna.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Insight Generation: Menghasilkan wawasan tentang fitur yang paling berharga bagi pengguna, serta hambatan yang menghambat pengguna dari menggunakan platform.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Prototyping and Testing: Membuat prototipe fitur baru yang diusulkan dan mengujinya dengan kelompok pengguna untuk mendapatkan umpan balik.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Iteration: Melakukan iterasi pada fitur berdasarkan umpan balik pengguna, mengoptimalkan fungsionalitas dan pengalaman pengguna.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Documentation and Reporting: Mendokumentasikan temuan dan rekomendasi dalam laporan, serta menyediakan pembaruan untuk tim pengembangan.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Dalam kedua contoh ini, pendekatan metodologi riset desain membantu tim dalam memahami kebutuhan pengguna, mengidentifikasi masalah, menghasilkan solusi yang lebih baik, dan meningkatkan kinerja produk mereka.&lt;/p&gt;

</description>
      <category>learning</category>
      <category>computerscience</category>
      <category>indonesia</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Tutorial: Cara Menarik Data Tabel Transportasi dari Situs Web dan Menyimpannya sebagai File CSV dengan Python</title>
      <dc:creator>Okyza Maherdy Prabowo</dc:creator>
      <pubDate>Mon, 29 Apr 2024 06:16:55 +0000</pubDate>
      <link>https://dev.to/okyzaprabowo/tutorial-cara-menarik-data-tabel-transportasi-dari-situs-web-dan-menyimpannya-sebagai-file-csv-dengan-python-22fi</link>
      <guid>https://dev.to/okyzaprabowo/tutorial-cara-menarik-data-tabel-transportasi-dari-situs-web-dan-menyimpannya-sebagai-file-csv-dengan-python-22fi</guid>
      <description>&lt;p&gt;Dalam dunia analisis data, sering kali Kita perlu mengambil data dari situs web dan menyimpannya dalam format yang mudah diolah, seperti file CSV. Dalam tutorial ini, kita akan belajar bagaimana melakukan scraping web menggunakan Python dan menyimpan data tabel dari situs web ke dalam file CSV.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Langkah 1: Instalasi Pustaka Python&lt;/strong&gt;&lt;br&gt;
Sebelum memulai, pastikan Kita telah menginstal pustaka Python yang diperlukan dengan menjalankan perintah berikut melalui terminal atau command prompt:&lt;br&gt;
&lt;code&gt;pip install beautifulsoup4 pandas requests&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Langkah 2: Impor Pustaka dan Fungsi&lt;/strong&gt;&lt;br&gt;
Dalam hal ini menggunakan tiga pustaka utama:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;requests&lt;/em&gt;: Untuk melakukan permintaan HTTP ke situs web.&lt;br&gt;
&lt;em&gt;BeautifulSoup (dari pustaka bs4)&lt;/em&gt;: Untuk melakukan parsing HTML.&lt;br&gt;
&lt;em&gt;pandas&lt;/em&gt;: Untuk menyimpan data ke dalam file CSV.&lt;br&gt;
Berikut adalah impor pustaka dan definisi fungsi yang akan kita gunakan:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import requests
from bs4 import BeautifulSoup
import pandas as pd

def scrape_table(url):
    # Mengambil konten HTML dari URL
    response = requests.get(url)
    soup = BeautifulSoup(response.text, 'html.parser')

    # Mencari tabel dengan class 'table-striped'
    table = soup.find('table', class_='table-striped')

    # Mendapatkan semua baris dan kolom dari tabel
    rows = table.find_all('tr')
    data = []
    for row in rows:
        cols = row.find_all('td')
        cols = [col.text.strip() for col in cols]
        data.append(cols)
    return data

def save_to_csv(data, filename):
    # Menyimpan data ke dalam file CSV
    df = pd.DataFrame(data[1:], columns=data[0])
    df.to_csv(filename, index=False)
    print("Data telah disimpan ke", filename)

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Langkah 3: Scraping Data Tabel&lt;/strong&gt;&lt;br&gt;
Fungsi scrape_table(url) akan melakukan scraping data tabel dari URL yang diberikan dan mengembalikan data dalam bentuk list of lists. Ini akan memisahkan setiap baris dan kolom dari tabel.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Langkah 4: Menyimpan Data ke dalam File CSV&lt;/strong&gt;&lt;br&gt;
Fungsi save_to_csv(data, filename) akan mengambil data yang telah kita scrape dan menyimpannya ke dalam file CSV dengan menggunakan pustaka pandas.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Langkah 5: Menjalankan Skrip&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;if __name__ == "__main__":
    # URL halaman web yang akan di-scrape
    url = 'https://datinbptj.dephub.go.id/Statistik/ruas'

    # Melakukan scraping data tabel
    table_data = scrape_table(url)

    # Menyimpan data ke dalam file CSV
    save_to_csv(table_data, 'data_ruas.csv')
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Dalam blok kode ini, kami menentukan URL situs web yang ingin kami scrape. Kemudian, kami memanggil fungsi scrape_table(url) untuk melakukan scraping data tabel dari URL tersebut, dan kemudian menyimpan data ke dalam file CSV dengan nama 'data_ruas.csv'.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Kesimpulan&lt;/strong&gt;&lt;br&gt;
Dengan menggunakan Python dan pustaka-pustaka yang tersedia, kita dapat dengan mudah menarik data tabel dari situs web dan menyimpannya dalam format yang mudah diolah seperti CSV. URL memberikan akses ke data yang tersedia secara online untuk analisis lebih lanjut sesuai kebutuhan.&lt;/p&gt;

</description>
      <category>indonesia</category>
      <category>python</category>
      <category>tutorial</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
