tag:blogger.com,1999:blog-25567221853827577512024-03-14T04:03:42.399+07:00Log of Kang Cahya - I write what I like - IT, Programming, Photography, EtcIni adalah blog personal saya (Kang Cahya), disini saya menulis artikel seputar IT, Programming, Photography dan lainnya yang aku sukai.Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.comBlogger372125tag:blogger.com,1999:blog-2556722185382757751.post-3904661246178989842024-02-21T20:31:00.002+07:002024-02-21T20:33:34.291+07:00Membuat Animasi Transisi sederhana saat Web berpindah halaman agar proses perpindahnya Halus<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghyjfge-TnGL3MUzlMgZD2HqyIIsbzlJ38mZ3BtT7U_SLwTy0v-mBpyxHjSDXv3NProFiDF98syjvEGRb8m9DIdZhqD68_OxHD8sF5vcEBBImJfjd7yx6Do4ORvM4LRCpFUD8oIqXVGu6Byfda52b8pDMhiRn0KU5dc_jpok-EmdjXWpN50I-f-h2NoDRi/s1280/fadein-animation-transition.webp" style="margin-left: 1em; margin-right: 1em;"><img alt="Membuat Animasi Transisi sederhana saat Web berpindah halaman agar proses perpindahnya Halus" border="0" data-original-height="720" data-original-width="1280" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghyjfge-TnGL3MUzlMgZD2HqyIIsbzlJ38mZ3BtT7U_SLwTy0v-mBpyxHjSDXv3NProFiDF98syjvEGRb8m9DIdZhqD68_OxHD8sF5vcEBBImJfjd7yx6Do4ORvM4LRCpFUD8oIqXVGu6Byfda52b8pDMhiRn0KU5dc_jpok-EmdjXWpN50I-f-h2NoDRi/w640-h360/fadein-animation-transition.webp" title="Membuat Animasi Transisi sederhana saat Web berpindah halaman agar proses perpindahnya Halus" width="640" /></a></div><br /><div>Pada pembahasan kali ini saya akan membahas topik ringan yang mungkin cukup membantu untuk Kamu. Saya akan coba berbagi kode sederhana tetang Animasi Transisi yang mungkin akan membuat halaman web Kamu menjadi lebih Smooth atau Halus saat melakukan perpindahan halaman.</div><div><div>Dalam dunia desain web, animasi dapat menjadi elemen kunci untuk meningkatkan pengalaman pengguna. Salah satu animasi yang sering digunakan adalah efek fade-in, yang memberikan tampilan halus dan elegan pada elemen halaman web. Dalam artikel ini, saya akan membahas cara menggunakan CSS untuk membuat efek fade-in pada elemen body.</div><div><br /></div><h3 style="text-align: left;">Pengantar:</h3><div>Efek fade-in adalah teknik animasi yang membuat elemen halaman web muncul secara perlahan dari keadaan tidak terlihat menjadi terlihat. Kode CSS di bawah ini akan memberikan pengalaman visual yang menarik pada pengguna saat halaman web dimuat.</div></div><div><br /></div><div>Untuk praktiknya mungkin Kamu dapat mencoba menyalin kode dibawah ini kemudian pasang pada projek web Kamu, dan setelah itu lihatlah hasilnya, Apakah transisi web Kamu sudah menjadi lebih Smooth sekarang?</div><div><br /></div><div><pre><code>body {
animation: fadeInAnimation ease 3s;
animation-iteration-count: 1;
animation-fill-mode: forwards;
transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
}
@keyframes fadeInAnimation {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}</code></pre></div><div><br /></div><div><h3 style="text-align: left;">Penjelasan Kode:</h3><div>Kode di atas memiliki dua bagian utama. Pertama, selector body diberi properti animasi yang disebut "fadeInAnimation" dengan durasi 3 detik dan efek "ease". Ini akan membuat elemen body muncul perlahan-lahan saat halaman web dimuat. Properti lainnya, seperti animation-iteration-count dan animation-fill-mode, digunakan untuk mengontrol jumlah iterasi dan status akhir animasi.</div><div><br /></div><div>Properti kedua adalah transition, yang memberikan efek transisi pada elemen, seperti perubahan opacity dan transformasi. Meskipun dalam contoh ini tidak dijelaskan transformasi apa yang digunakan, namun properti ini dapat ditambahkan sesuai kebutuhan.</div><div><br /></div><h3 style="text-align: left;">Penerapan:</h3><div>Kamu dapat mengimplementasikan kode ini pada halaman web Kamu dengan menambahkannya ke dalam stylesheet CSS. Pastikan untuk menyesuaikan durasi, timing function, dan elemen target sesuai dengan kebutuhan desain web Kamu.</div><div><br /></div><div>Dengan menambahkan efek fade-in ini, Kamu dapat memberikan tampilan yang lebih dinamis dan menarik pada halaman web Kamu, meningkatkan kesan profesional dan menarik perhatian pengunjung. Semoga artikel ini membantu Kamu menambahkan sentuhan animasi yang elegan pada desain web Kamu!</div></div><div><br /></div><h3 style="text-align: left;">Penutup</h3><div><div>Dengan menggunakan teknik animasi fade-in pada elemen halaman web, Kamu telah berhasil menambahkan sentuhan visual yang menarik dan memikat pengguna. Efek ini tidak hanya memberikan tampilan yang lebih dinamis, tetapi juga meningkatkan kesan profesional dan membuat pengalaman pengguna lebih menyenangkan.</div><div><br /></div><div>Penting untuk diingat bahwa animasi seharusnya tidak mengganggu fungsionalitas dan navigasi pada situs web Kamu. Oleh karena itu, selalu pertimbangkan dengan cermat di mana dan bagaimana Kamu menerapkan efek animasi untuk memastikan bahwa mereka mendukung tujuan dan pesan desain web Kamu.</div><div><br /></div><div>Dengan demikian, semoga tutorial ini memberikan wawasan yang berharga dan membantu Kamu menciptakan halaman web yang tidak hanya informatif, tetapi juga estetis. Jangan ragu untuk bereksperimen dengan variasi efek animasi dan menyesuaikannya dengan kebutuhan desain spesifik Kamu. Selamat menciptakan pengalaman pengguna yang menakjubkan melalui penggunaan animasi CSS!</div></div>Kang cahyahttp://www.blogger.com/profile/11037249477300036688noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-76775507960022680722024-02-18T21:44:00.005+07:002024-02-18T21:50:19.341+07:00Cara menonaktifkan Dark Mode dan setting theme hanya di Light Mode di Nativescript<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtcLm5_sz7j-evg2NQfKhyphenhyphenQ-Dy4ymMGoVCCkNKJrMJJ3C7Q0bdPPOwSYQdLvn3srtLNwg-TpwEtR6B3MGMqIOCox0X4GV0D4jk1MtTwj7wBpm0v8x27xS-X3pD7N4CElaxqiAvxwLDs1ejNFvFZ1tCY-9OzudaPmfslyEWPz3Towara0aV2mARGxjD-pzA/s1920/dark-and-light-theme.webp" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara menonaktifkan Dark Mode dan setting theme hanya di Light Mode di Nativescript" border="0" data-original-height="1080" data-original-width="1920" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtcLm5_sz7j-evg2NQfKhyphenhyphenQ-Dy4ymMGoVCCkNKJrMJJ3C7Q0bdPPOwSYQdLvn3srtLNwg-TpwEtR6B3MGMqIOCox0X4GV0D4jk1MtTwj7wBpm0v8x27xS-X3pD7N4CElaxqiAvxwLDs1ejNFvFZ1tCY-9OzudaPmfslyEWPz3Towara0aV2mARGxjD-pzA/w640-h360/dark-and-light-theme.webp" title="Cara menonaktifkan Dark Mode dan setting theme hanya di Light Mode di Nativescript" width="640" /></a></div><br /><p>Pada dasarnya Nativescript sudah mendukung Dark atau Light Mode. Saat handphone kamu sedang dalam Dark Mode, maka aplikasi akan otomatis menyesuaikan dengan Theme Mode apa yang Handphone kamu gunakan. Namun di beberapa kasus mungkin kamu agak risi melihat tampilan aplikasi mu ketika dalam Mode Dark, dan kamu memutuskan untuk memaksa Theme aplikasi mu hanya di keadaan Light Mode dan ingin mematikan Dark Mode-nya.</p><p>Di pembahasan kali ini saya ingin berbagi tutorial tentang bagaimana cara mengatur aplikasi mu agar hanya berada di satu Mode saja, Ketika Theme Mode Handphone kamu di ubah, maka aplikasi mu akan tetap berada di mode yang sudah kamu tentukan. </p><p>Sebelum masuk ke langkah-langkahnya, saya ingin Disclaimer terlebih dahulu. Pada pembahasan kali ini saya akan memberi contoh kode Nativesctipt menggunakan JS, bukan TS atau lainnya. Dan versi Nativescript yang saya gunakan adalah Nativescript versi 8.6.x. Jadi jika Source yang kamu gunakan adalah di luar JS, bisa kamu coba sesuaikan sendiri berdasarkan contoh yang saya akan berikan.</p><h2 style="text-align: left;">LANGKAH PERTAMA</h2><p>Di file AndroidManifest.xml coba tambahkan properti <span style="background-color: black; color: white;">android:forceDarkAllowed="false"</span> pada tag <i><application></i> atau tag <i><activity></i>.</p><p>Jika kamu menemukan sebuah error, hapus kode pada file AndroidManifest yang tadi kamu tambahkan dan coba kamu tambahkan item berikut ini pada file <i>App_Resouces/Android/src/main/res/values/styles.xml</i></p><p></p><pre><code><item name="android:forceDarkAllowed">false</item></code></pre><p></p><p>kode lengkapnya kurang lebih seperti ini :</p><p></p><pre><code><resources ...>
<!-- ...more code, etc... -->
<style name="LaunchScreenThemeBase" parent="Theme.AppCompat.Light.NoActionBar">
<item name="toolbarStyle">@style/NativeScriptToolbarStyle</item>
<item name="colorPrimary">@color/ns_primary</item>
<item name="colorPrimaryDark">@color/ns_primaryDark</item>
<item name="colorAccent">@color/ns_accent</item>
<item name="android:windowBackground">@drawable/splash_screen</item>
<item name="android:windowActionBarOverlay">true</item>
<item name="android:windowTranslucentStatus">true</item>
<item name="android:forceDarkAllowed">false</item>
</style>
<!-- ...more code, etc... -->
</resources></code></pre><p></p><h2 style="text-align: left;">LANGKA KEDUA</h2><p>Pada file app.js atau main.js kamu import dahulu package <i>@nativescript/theme</i>, setelah itu baru kamu set theme yang kamu inginkan, kurang lebih seperti ini kode lengkapnya :</p><p></p><pre><code>import { Application } from "@nativescript/core";
import { Theme } from "@nativescript/theme";
Theme.setMode(Theme.Light); // Theme.Dark Or Theme.Light
Application.run({ moduleName: "app-root" });
</code></pre><p></p><p><i>Theme.Light</i> itu untuk Light Mode dan <i>Theme.Dark</i> adalah untuk Dark Mode. </p><p>Mungkin cukup sekian dulu utnuk pembahasan kali ini, semoga pembahasan ini cukup membantu dan bermanfaat untuk kamu, Terimakasih :)</p><p><br /></p><p>Reference : <a href="https://medium.com/@kivind/nativescript-disabling-dark-mode-382e5dfd11bd" rel="nofollow" target="_blank">https://medium.com/@kivind/nativescript-disabling-dark-mode-382e5dfd11bd</a></p><p><br /></p>Kang cahyahttp://www.blogger.com/profile/11037249477300036688noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-16228173465364187332024-02-11T17:29:00.002+07:002024-02-11T17:29:28.379+07:00Helper file_get_contents sederhana PHP untuk mengakses API dengan method GET POST PUT dan DELETE<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwg6gVLYD18NKGsBeIOiU4_6PJgih5XHI2ne2CWpzEGp4JJl9wCY4c-_OgueLvmNE1DaRh0pdWGFQ0uxxjCyZW4klk5KJaYw3SbsmvjBPid5RIOqGFR3dszpQGFWd7OI2uckPLKdL5rlwubHSSf1QrLxzp8S_uPqDpjKGTHyXt-njTFldcitneR-GBSFM0/s1280/simple-helper-fileGetContent-php.webp" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Helper file_get_contents sederhana PHP untuk mengakses API dengan method GET POST PUT dan DELETE" border="0" data-original-height="720" data-original-width="1280" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwg6gVLYD18NKGsBeIOiU4_6PJgih5XHI2ne2CWpzEGp4JJl9wCY4c-_OgueLvmNE1DaRh0pdWGFQ0uxxjCyZW4klk5KJaYw3SbsmvjBPid5RIOqGFR3dszpQGFWd7OI2uckPLKdL5rlwubHSSf1QrLxzp8S_uPqDpjKGTHyXt-njTFldcitneR-GBSFM0/w640-h360/simple-helper-fileGetContent-php.webp" title="Helper file_get_contents sederhana PHP untuk mengakses API dengan method GET POST PUT dan DELETE" width="640" /></a></div><br /><p>Pada pembahasan kali ini saya akan membahas bagaimana cara mengakses API dengan file_get_contents PHP. Pada artikel ini saya akan membagikan sebuah helper sederhana untuk mengakses API menggunakan file_get_contents. Helper ini mendukung 4 method, yakni GET, POST, PUT dan DELETE.</p><p>Saya asumsikan pembaca sekalian sudah memahami dasar-dasar dari PHP, jadi saya tidak akan menjelaskan kode helper ini secara baris per baris. Kurang lebih seperti ini bentuk helpernya.</p><p></p><pre style="text-align: left;"><code>
<?php
function makeApiRequest($url, $params = [], $method = 'GET') {
$options = [
'http' => [
'method' => $method,
'header' => 'Content-Type: application/x-www-form-urlencoded',
'content' => http_build_query($params),
],
];
// If it's a GET request, append parameters to the URL
if ($method === 'GET' && !empty($params)) {
$url .= '?' . http_build_query($params);
}
// Create a stream context with the specified options
$context = stream_context_create($options);
// Make the request using file_get_contents with the created context
$response = file_get_contents($url, false, $context);
// Return the API response
return $response;
}
?>
</code></pre><p style="text-align: left;"></p><h2 style="text-align: left;">HOW TO USAGE?</h2><p>Kemudian cara menggunakannya kurang lebih sebagai berikut :</p><h3 style="text-align: left;">GET</h3><pre style="text-align: left;"><code>// Example usage for GET request
$name = 'kim';
$countryId = 'US';
$api_url_get = 'https://api.example.io';
$params_get = [
'name' => $name,
'country_id' => $countryId,
];
$responseGet = makeApiRequest($api_url_get, $params_get, 'GET');
echo "GET Response: $responseGet\n";
</code></pre><p style="text-align: left;"></p><h3 style="text-align: left;">POST</h3><pre style="text-align: left;"><code>// Example usage for POST request
$api_url_post = 'https://api.example.com/posts';
$params_post = [
'title' => 'New Post',
'content' => 'This is the content of the new post.',
];
$responsePost = makeApiRequest($api_url_post, $params_post, 'POST');
echo "POST Response: $responsePost\n";
</code></pre><p style="text-align: left;"></p><h3 style="text-align: left;">PUT</h3><pre style="text-align: left;"><code>// Example usage for PUT request
$api_url_put = 'https://api.example.com/123';
$params_put = [
'title' => 'Updated Post',
'content' => 'This is the updated content of the post.',
];
$responsePut = makeApiRequest($api_url_put, $params_put, 'PUT');
echo "PUT Response: $responsePut\n";
</code></pre><p style="text-align: left;"></p><h3 style="text-align: left;">DELETE</h3><pre><code>// Example usage for DELETE request
$api_url_delete = 'https://api.example.com/123';
$responseDelete = makeApiRequest($api_url_delete, [], 'DELETE');
echo "DELETE Response: $responseDelete\n";
</code></pre><p></p><p><br /></p><p>Kamu juga dapat melihat kodenya di Gist Github, berikut link-nya:<br /><a href="https://gist.github.com/dyazincahya/17e6de230b56026f690450eaaa2a73eb" rel="nofollow" target="_blank">https://gist.github.com/dyazincahya/17e6de230b56026f690450eaaa2a73eb</a><br /></p><p>Kurang lebih sekian dahulu, semoga artikel ini bermanfaat untuk kamu. kurang lebihnya saya ucapkan mohon maaf dan terima kasih :)</p><p><br /></p><p><br /></p>Kang cahyahttp://www.blogger.com/profile/11037249477300036688noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-56435474282740526322024-02-11T15:15:00.001+07:002024-02-11T15:22:21.435+07:00Helper cURL sederhana PHP untuk mengakses API dengan method GET POST PUT dan DELETE<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCN3eJuTNWU-hqNcH3h5GFu21VnypBqgmZerU7tWqhMDG3zGfzzulBh7wrKG3Ijx3Wc6A3Dxu4ZtEUndw7TGhR1_FJ1fJytK2Z4UAm6gRkU_W6cfPjLub482WuTLmn8_FP6K7-k_qC1li2byRCso9mEQW7vLi-IfARQVw-aV_x9WcIpw1LZx8aNc8qlbNU/s1280/simple-helper-curl-php.webp" style="margin-left: 1em; margin-right: 1em;"><img alt="Helper cURL sederhana PHP untuk mengakses API dengan method GET POST PUT dan DELETE" border="0" data-original-height="720" data-original-width="1280" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCN3eJuTNWU-hqNcH3h5GFu21VnypBqgmZerU7tWqhMDG3zGfzzulBh7wrKG3Ijx3Wc6A3Dxu4ZtEUndw7TGhR1_FJ1fJytK2Z4UAm6gRkU_W6cfPjLub482WuTLmn8_FP6K7-k_qC1li2byRCso9mEQW7vLi-IfARQVw-aV_x9WcIpw1LZx8aNc8qlbNU/w640-h360/simple-helper-curl-php.webp" title="Helper cURL sederhana PHP untuk mengakses API dengan method GET POST PUT dan DELETE" width="640" /></a></div><p>Pada pembahasan kali ini saya akan membahas bagaimana cara mengakses API dengan cURL PHP. Pada artikel ini saya akan membagikan sebuah helper sederhana untuk mengakses API menggunakan cURL. Helper ini mendukung 4 method, yakni GET, POST, PUT dan DELETE.</p><p>Saya asumsikan pembaca sekalian sudah memahami dasar-dasar dari PHP, jadi saya tidak akan menjelaskan kode helper ini secara baris per baris. Kurang lebih seperti ini bentuk helpernya.</p><p></p><pre style="text-align: left;"><code>
<?php
function makeApiRequest($url, $params = [], $method = 'GET') {
// Initialize cURL session
$ch = curl_init($url);
// Set common cURL options
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Return the response as a string instead of outputting it
// Set method-specific cURL options
if ($method === 'POST') {
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
} elseif ($method === 'PUT') {
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
} elseif ($method === 'DELETE') {
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'DELETE');
} elseif ($method === 'GET') {
// Append parameters to the URL for GET requests
if (!empty($params)) {
$url .= '?' . http_build_query($params);
}
}
// Execute cURL session and get the response
$response = curl_exec($ch);
// Check for cURL errors
if (curl_errno($ch)) {
echo 'Curl error: ' . curl_error($ch);
}
// Close cURL session
curl_close($ch);
// Return the API response
return $response;
}
?>
</code></pre><p style="text-align: left;"></p><h2 style="text-align: left;">HOW TO USAGE?</h2><p>Kemudian cara menggunakannya kurang lebih sebagai berikut :</p><h3 style="text-align: left;">GET</h3><pre style="text-align: left;"><code>// Example usage for GET request
$name = 'kim';
$countryId = 'US';
$api_url_get = 'https://api.example.io';
$params_get = [
'name' => $name,
'country_id' => $countryId,
];
$responseGet = makeApiRequest($api_url_get, $params_get, 'GET');
echo "GET Response: $responseGet\n";
</code></pre><p style="text-align: left;"></p><h3 style="text-align: left;">POST</h3><pre style="text-align: left;"><code>// Example usage for POST request
$api_url_post = 'https://api.example.com/posts';
$params_post = [
'title' => 'New Post',
'content' => 'This is the content of the new post.',
];
$responsePost = makeApiRequest($api_url_post, $params_post, 'POST');
echo "POST Response: $responsePost\n";
</code></pre><p style="text-align: left;"></p><h3 style="text-align: left;">PUT</h3><pre style="text-align: left;"><code>// Example usage for PUT request
$api_url_put = 'https://api.example.com/123';
$params_put = [
'title' => 'Updated Post',
'content' => 'This is the updated content of the post.',
];
$responsePut = makeApiRequest($api_url_put, $params_put, 'PUT');
echo "PUT Response: $responsePut\n";
</code></pre><p style="text-align: left;"></p><h3 style="text-align: left;">DELETE</h3><pre><code>// Example usage for DELETE request
$api_url_delete = 'https://api.example.com/123';
$responseDelete = makeApiRequest($api_url_delete, [], 'DELETE');
echo "DELETE Response: $responseDelete\n";
</code></pre><p></p><p><br /></p><p>Kamu juga dapat melihat kodenya di Gist Github, berikut link-nya:<br /><a href="https://gist.github.com/dyazincahya/dc6c947a984794db35e45f0a2aed35ea" rel="nofollow" target="_blank">https://gist.github.com/dyazincahya/dc6c947a984794db35e45f0a2aed35ea</a><br /></p><p>Kurang lebih sekian dahulu, semoga artikel ini bermanfaat untuk kamu. kurang lebihnya saya ucapkan mohon maaf dan terima kasih :)</p><p><br /></p><p><br /></p>Kang cahyahttp://www.blogger.com/profile/11037249477300036688noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-37967735060668763322024-01-02T10:43:00.000+07:002024-01-02T10:44:09.131+07:00Tentang Color Space sRGB Display P3 Adobe RGB dan ProPhoto RGB di dunia Fotografi<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUd2VlC3X4cws5DSpgHEsMcRaAHLOm56gKYFZYJFzRCJpBshiZijHUjWw2GjGvvlOCuVgYN8FQjXhWkW4TMQnSfuP7yD4ykFVPusgFgGDrt9-pGiALLmBMndgpSi9R_De_EU-0UZmJxYxECQtfC7BEUScSPMU2ykpG2FSL61GBBQdIcu_5b08yLu5BmQeQ/s1200/colorspace-x.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Tentang Color Space sRGB Display P3 Adobe RGB dan ProPhoto RGB di dunia Fotografi" border="0" data-original-height="1200" data-original-width="1064" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUd2VlC3X4cws5DSpgHEsMcRaAHLOm56gKYFZYJFzRCJpBshiZijHUjWw2GjGvvlOCuVgYN8FQjXhWkW4TMQnSfuP7yD4ykFVPusgFgGDrt9-pGiALLmBMndgpSi9R_De_EU-0UZmJxYxECQtfC7BEUScSPMU2ykpG2FSL61GBBQdIcu_5b08yLu5BmQeQ/w355-h400/colorspace-x.png" title="Tentang Color Space sRGB Display P3 Adobe RGB dan ProPhoto RGB di dunia Fotografi" width="355" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><p></p><p>Color space atau Ruang Warna adalah model matematis yang digunakan untuk merepresentasikan dan menggambarkan kumpulan warna yang dapat dihasilkan oleh suatu perangkat atau sistem. Konsep ini penting dalam dunia fotografi, desain grafis, percetakan, dan pengolahan gambar digital. Setiap warna dalam Color Space direpresentasikan oleh koordinat numerik, yang memungkinkan perangkat dan perangkat lunak untuk menginterpretasikan dan menampilkan warna dengan konsistensi.</p><p><br /></p><h2 style="text-align: left;">CONTOH COLOR SPACE</h2><p>Beberapa contoh Color Space yang umum digunakan termasuk:</p><p></p><ol style="text-align: left;"><li>sRGB (Standard Red Green Blue): Color Space standar yang banyak digunakan untuk monitor, web, dan perangkat konsumen.</li><li>Adobe RGB: Color Space yang lebih luas, sering digunakan dalam fotografi profesional dan percetakan.</li><li>CMYK (Cyan, Magenta, Yellow, Key/Black): Digunakan dalam percetakan untuk menggambarkan warna pada media cetak dengan tinta warna.</li><li>LAB: Model warna independen dari perangkat yang memisahkan informasi kecerahan (luminance) dari warna.</li><li>Display P3: Color Space yang dikembangkan oleh Apple untuk produk-produknya, mencakup lebih banyak warna daripada sRGB.</li><li>ProPhoto RGB: Color Space yang sangat besar yang digunakan dalam pengolahan gambar profesional.</li></ol><p></p><p>Setiap Color Space memiliki gamutnya sendiri, yang mencirikan rentang warna yang dapat direpresentasikan. Pemahaman tentang Color Space penting karena dapat mempengaruhi cara warna ditangkap, disimpan, dan ditampilkan di berbagai perangkat dan media.</p><p><br /></p><h2 style="text-align: left;">TOTAL COLOR SPACE</h2><p>Tidak ada batasan pasti pada jumlah total Color Space yang ada saat ini karena perkembangan dan penelitian terus berlanjut. Berbagai model warna telah dikembangkan untuk memenuhi kebutuhan khusus dalam berbagai industri, seperti fotografi, percetakan, dan desain grafis. Beberapa di antaranya termasuk yang disebutkan sebelumnya (sRGB, Display P3, Adobe RGB, dan ProPhoto RGB), dan ada banyak lagi seperti CMYK, LAB, dan lainnya.</p><p>Perlu diingat bahwa kebanyakan dari Color Space ini memiliki kegunaan tertentu tergantung pada jenis proyek dan perangkat yang digunakan. Selain itu, seiring perkembangan teknologi dan penelitian di bidang ilmu komputer dan grafis, mungkin muncul Color Space baru atau modifikasi pada yang sudah ada. Jadi, untuk informasi terbaru, selalu disarankan untuk merujuk ke literatur ilmiah terkini atau sumber resmi yang relevan di industri tersebut.</p><p><br /></p><h2 style="text-align: left;">COLOR SPACE UNTUK FOTOGRAFI</h2><p style="text-align: left;">Berikut adalah beberapa Color Space yang biasa digunakan untuk kebutuhan Fotografi:</p><h3 style="text-align: left;">sRGB (Standard Red Green Blue)</h3><p></p><ul style="text-align: left;"><li>sRGB adalah Color Space RGB standar yang dibuat secara bersama-sama oleh HP dan Microsoft.</li><li>Ini adalah Color Space yang paling banyak digunakan dan merupakan default untuk internet, kamera digital, dan banyak perangkat elektronik konsumen.</li><li>Memiliki gamut yang relatif kecil dibandingkan dengan Color Space lainnya.</li></ul><p></p><h3 style="text-align: left;">DP3 (Display P3)</h3><p></p><ul style="text-align: left;"><li>Display P3 adalah Color Space yang dikembangkan oleh Apple.</li><li>Memiliki gamut yang lebih besar dibandingkan sRGB dan sering digunakan di perangkat Apple, termasuk iPhone dan layar Mac terbaru.</li><li>Khususnya dikenal karena rentangnya yang diperluas pada warna merah dan hijau.</li></ul><p></p><h3 style="text-align: left;">Adobe RGB (1998)</h3><p></p><ul style="text-align: left;"><li>Adobe RGB adalah Color Space yang dibuat oleh Adobe Systems pada tahun 1998.</li><li>Memiliki gamut yang lebih luas dibandingkan sRGB, terutama pada warna biru kehijauan dan hijau.</li><li>Sering digunakan dalam alur kerja fotografi profesional dan pencetakan di mana gamut warna yang lebih besar diperlukan.</li></ul><p></p><h3 style="text-align: left;">ProPhoto RGB</h3><p></p><ul style="text-align: left;"><li>ProPhoto RGB adalah Color Space yang lebih besar lagi yang dirancang untuk digunakan dalam fotografi profesional dan pengolahan gambar digital.</li><li>Memiliki gamut yang sangat luas, mencakup lebih banyak warna daripada sRGB dan Adobe RGB.</li><li>Sering digunakan dalam pencetakan dan alur kerja pengeditan tingkat tinggi.</li></ul><p></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p>Kang cahyahttp://www.blogger.com/profile/11037249477300036688noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-29333568782762407992023-12-08T08:44:00.004+07:002023-12-27T12:45:58.231+07:00Cara mudah Install CloudFlare (Zero Trust) di Ubuntu Linux<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmqUpUZtts6haWQjAcn9L2j-4S683OX4Xim9X5t-eZVi-Ay35rWFsjAxMXrts_Go3Ouopo53l1tA0t5TM6kVmziqNJgSkm0DeteVvaG_XWxZcr-J1hPogzurhimZn8hz_vRwzjBDBqpv8KzfaWjDITRlTCoh1S9pYFb38wYbJIIJFQvG0i4B9_e99CwOn5/s1200/cloudflare.webp" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mudah Install CloudFlare (Zero Trust) di Ubuntu Linux" border="0" data-original-height="409" data-original-width="1200" height="218" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmqUpUZtts6haWQjAcn9L2j-4S683OX4Xim9X5t-eZVi-Ay35rWFsjAxMXrts_Go3Ouopo53l1tA0t5TM6kVmziqNJgSkm0DeteVvaG_XWxZcr-J1hPogzurhimZn8hz_vRwzjBDBqpv8KzfaWjDITRlTCoh1S9pYFb38wYbJIIJFQvG0i4B9_e99CwOn5/w640-h218/cloudflare.webp" title="Cara mudah Install CloudFlare (Zero Trust) di Ubuntu Linux" width="640" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><p>Pada pembahasan kali ingin membahas tentang <b><i>Cara Install CloudFlare di Ubuntu Linux</i></b>. Untuk yang belum tahu Cloudflare adalah sebuah perusahaan yang menyediakan layanan keamanan, kinerja, dan pelayanan awan (cloud) untuk situs web. Layanan Cloudflare membantu melindungi situs web dari serangan siber, meningkatkan kinerja situs dengan caching konten, dan menyediakan berbagai fitur tambahan seperti pemutusan SSL, load balancing, dan firewall.</p><p>Untuk kamu yang membutuhkan tool semacam VPN tapi ingin yang Gratis, mungkin CloudFlare bisa jadi solusinya.</p><h2 style="text-align: left;">TENTANG</h2><p>Pada dasarnya Cloudflare tidak secara khusus menawarkan layanan Virtual Private Network (VPN) di dalam portofolio layanannya. Namun, Cloudflare menyediakan beberapa fitur keamanan dan privasi yang dapat membantu melindungi dan meningkatkan privasi pengguna (fitur ini kurang lebih mirip seperti VPN), diantaranya adalah :</p><h4 style="text-align: left;">1.1.1.1 with WARP:</h4><p>Cloudflare menyediakan aplikasi bernama 1.1.1.1 with WARP yang dapat digunakan untuk meningkatkan keamanan dan privasi selama penggunaan internet di perangkat mobile. WARP adalah layanan VPN yang dapat diaktifkan untuk melindungi koneksi data Anda dari ancaman keamanan. Namun, perlu dicatat bahwa fitur ini lebih fokus pada privasi saat browsing di perangkat mobile daripada menyediakan koneksi VPN penuh untuk seluruh lalu lintas perangkat.</p><h4 style="text-align: left;">DNS over HTTPS (DoH) dan DNS over TLS (DoT):</h4><p>Cloudflare menyediakan dukungan untuk DNS over HTTPS (DoH) dan DNS over TLS (DoT). Ini membantu meningkatkan keamanan dan privasi dengan mengenkripsi lalu lintas DNS antara perangkat Anda dan server DNS Cloudflare.</p><h4 style="text-align: left;">SSL/TLS Encryption:</h4><p>Cloudflare menyediakan dukungan SSL/TLS untuk mengamankan komunikasi antara pengguna dan server, bahkan jika bukan dalam konteks penggunaan VPN.</p><p>Jika Anda mencari solusi VPN yang menyediakan lapisan keamanan tambahan dan melindungi seluruh lalu lintas perangkat, Anda mungkin perlu mencari penyedia VPN pihak ketiga yang khusus menawarkan layanan tersebut. Banyak penyedia VPN yang dapat menyediakan koneksi VPN penuh dengan enkripsi dan privasi yang lebih luas.</p><p>Penting untuk selalu membaca dan memahami kebijakan privasi dan keamanan dari layanan apa pun yang Anda gunakan, termasuk VPN atau layanan keamanan seperti yang disediakan oleh Cloudflare.<br /></p><p><br /></p><h2 style="text-align: left;">INSTALASI</h2><p>Kurang lebih seperti itu penjelasannya, nah sekarang kita akan coba masuk ke pembahasan utama tentang cara install cloudflare di ubuntu, caranya sebagai berikut :</p><p><b>Pertama</b><br />Jalankan perintah berikut di terminal untuk menambahkan cloudflare gpg key :</p><p></p><pre><code>curl -fsSL https://pkg.cloudflareclient.com/pubkey.gpg | sudo gpg --yes --dearmor --output /usr/share/keyrings/cloudflare-warp-archive-keyring.gpg</code></pre><p></p><p><b>Kedua</b><br />Jalankan perintah berikut untuk menambahkan repo cloudflare pada apt repo di lokal mu :</p><p></p><pre><code>echo "deb [arch=amd64 signed-by=/usr/share/keyrings/cloudflare-warp-archive-keyring.gpg] https://pkg.cloudflareclient.com/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/cloudflare-client.list</code></pre><p></p><p><b>Ketiga</b><br />Jalankan perintah berikut untuk melakukan update sekaligus menginstall coudflare-nya :</p><p></p><pre><code>sudo apt-get update && sudo apt-get install cloudflare-warp</code></pre><p></p><p> Instalasi ini mendukung versi ubuntu seperti Jammy (22.04), Focal (20.04), Bionic (18.04), Xenial (16.04). Harap coba di cari tahu lebih lanjut jika versi ubtun yang kamu gunakan diatas versi 22.04.</p><p>Source : <a href="https://pkg.cloudflareclient.com/#ubuntu" rel="nofollow" target="_blank">https://pkg.cloudflareclient.com/#ubuntu</a></p><p><br /></p><h2 style="text-align: left;">KONFIGURASI</h2><p>Setelah intalasi berhasil, maka selanjutnya untuk melakukan konfigurasi, berikut caranya :</p><p></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRYsg8oxZyQqu-VsRS-SgxQY26foEumZjFdWlss8KgPKIAeZeqhDCqaQt1UctFB4UbEW0llcGcxSja9Jqp4yKC4Ukiupjn3d4wWCo5s2y5UVWnpCwquW_f9yyZswgOHvGSk5in0QeVmgdPJ0GTWn83nuYyB9MSv-HL8I-QVA3zDZZWHljBI6kABsPZzLwy/s782/warp-comand.png" style="margin-left: auto; margin-right: auto;"><img alt="Configuration Steps - Cara mudah Install CloudFlare (Zero Trust) di Ubuntu Linux" border="0" data-original-height="782" data-original-width="676" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRYsg8oxZyQqu-VsRS-SgxQY26foEumZjFdWlss8KgPKIAeZeqhDCqaQt1UctFB4UbEW0llcGcxSja9Jqp4yKC4Ukiupjn3d4wWCo5s2y5UVWnpCwquW_f9yyZswgOHvGSk5in0QeVmgdPJ0GTWn83nuYyB9MSv-HL8I-QVA3zDZZWHljBI6kABsPZzLwy/w554-h640/warp-comand.png" title="Configuration Steps - Cara mudah Install CloudFlare (Zero Trust) di Ubuntu Linux" width="554" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Configuration Steps</td></tr></tbody></table><div class="separator" style="clear: both; text-align: center;"><br /></div><b>Pertama</b><br />Lakukan registrasi client dengan menjalankan pertintah berikut <i>(jika ada konfirmasi Yes or No, ketik saja Y, lalu enter)</i> :<p></p><p></p><pre><code>warp-cli register</code></pre><p></p><p><b>Kedua</b><br />Coba konekan cloudflare-nya dengan cara menjalankan perintah berikut :</p><p></p><pre><code>warp-cli connect</code></pre><p></p><p><b>Ketiga</b><br />Jalankan perintah berikut untuk memastikan apakah warp-nya sudah aktif atau belum, jika warp sudah aktif maka akan muncuk informasi <i>warp=on</i>.</p><p></p><pre><code>curl https://www.cloudflare.com/cdn-cgi/trace/</code></pre><p></p><p><b>Keempat</b><br />Cara switching mode, pada cloudflare terdapat 2 mode, DOH dan WARP. Saya sendiri biasanya mengaktifkan dua-duanya, penjelasan tentang mode ini sudah di paparkan di atas. </p><p>Jalankan peritah berikut untuk mengaktifkan mode DOH:</p><p></p><pre><code>warp-cli set-mode doh</code></pre><p></p><p>Jalankan perintah berikut untuk mengaktifkan mode WARP:</p><p></p><pre><code>warp-cli set-mode warp</code></pre><p></p><p>Jalankan perintah berikut untuk mengaktifkan DOH+WARP:</p><p></p><pre><code>warp-cli set-mode doh+warp</code></pre><p></p><p>Jika proses-nya berhasil, maka akan muncul tampilan seperti ini :</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3TsfcmnYTWFH1aGBtUytpUonDrMGwgn-ckMn4MGX-pgnw85XUXJlBPgkh0CFcslp3JOiveBOVNAc1qQOSzbVoZ0PrFHQDQlwM_k7BgKifG8Co0iLSVlpYy1PnMqGcjAlk-gn0IFqacRJphi98g-aWEd_y_VjynKbG1gNux_5xP8BKWWfsWvLmrSLKxNCE/s465/warp.png" style="margin-left: auto; margin-right: auto;"><img alt="CloudFlare Zero Trus is Active - Cara mudah Install CloudFlare (Zero Trust) di Ubuntu Linux" border="0" data-original-height="465" data-original-width="384" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3TsfcmnYTWFH1aGBtUytpUonDrMGwgn-ckMn4MGX-pgnw85XUXJlBPgkh0CFcslp3JOiveBOVNAc1qQOSzbVoZ0PrFHQDQlwM_k7BgKifG8Co0iLSVlpYy1PnMqGcjAlk-gn0IFqacRJphi98g-aWEd_y_VjynKbG1gNux_5xP8BKWWfsWvLmrSLKxNCE/w264-h320/warp.png" title="CloudFlare Zero Trus is Active - Cara mudah Install CloudFlare (Zero Trust) di Ubuntu Linux" width="264" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">CloudFlare Zero Trus is Active</td></tr></tbody></table><p>source : <a href="https://developers.cloudflare.com/warp-client/get-started/linux/" rel="nofollow" target="_blank">https://developers.cloudflare.com/warp-client/get-started/linux/</a></p><p><br /></p><p>Kurang lebih cukup sekian dulu untuk pembahasan kali ini, semoga bermanfaat. Terimakasih :)</p><p><br /></p><div id="gtx-trans" style="left: 562px; position: absolute; top: 278px;"><div class="gtx-trans-icon"></div></div>Kang cahyahttp://www.blogger.com/profile/11037249477300036688noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-62004638835177623882023-12-06T08:31:00.000+07:002023-12-27T12:45:58.254+07:00Cara mudah update Git Software di Windows<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTC6VP4HWsh1Knkru0Dr3u934kmyeEkusio5Z7oOeco0COXQ22oE1fq6AFFV1Nes2KdL_7rzYG8pBSM5mZSzogpOIaHLxmbVnerb8SW8VG6wV80TC3ZTRo6vd3PgDdmMEsgCm5_Hbev8w27X7kuym1kOptV7zjBExtopphgD06gTUzcksxO4ujn07PmsE/s1013/git%20-%20web.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mudah update Git Software di Windows" border="0" data-original-height="769" data-original-width="1013" height="486" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTC6VP4HWsh1Knkru0Dr3u934kmyeEkusio5Z7oOeco0COXQ22oE1fq6AFFV1Nes2KdL_7rzYG8pBSM5mZSzogpOIaHLxmbVnerb8SW8VG6wV80TC3ZTRo6vd3PgDdmMEsgCm5_Hbev8w27X7kuym1kOptV7zjBExtopphgD06gTUzcksxO4ujn07PmsE/w640-h486/git%20-%20web.png" title="Cara mudah update Git Software di Windows" width="640" /></a></div><p><i><b>Cara mudah update Git Software di Windows</b></i>, sebelumnya ingin meluruskan saja, takut ada yang keliru, yang dibahas saat ini adalah Git software bukan Github, Gitlab atau yang lainnya. </p><p>Karna itu hal yang berbeda, Git adalah perangkat lunak yang digunakan untuk mengelola versi source code program. Git juga merupakan singkatan dari Group Inclusive Tour. Sedangkan Github dan Gitlab adalah sebuah layanan Hosting yang berbasiskan Git. </p><p>GitHub dan GitLab adalah repositori Git berbasis web yang terpisah. Keduanya adalah platform pengembangan yang berfokus pada sistem Git open source untuk kontrol versi terdistribusi.</p><p>Tapi kali ini saya tidak sedang membahas Github atau Gitlab, melainkan Git. Pada pembahasan ini saya akan berbagi cara mudah untuk meng-update Git software di Windows. Caranya ialah dengan menggunakan Command Line.</p><p>Pada dasarnya Git sudah menyediakan Command line untuk melakukan pembaharuan versi Git di Windows, jadi untuk kamu pengguna Windows tidak perlu repot-repot mengunduh file Exe git terbaru untuk melakukan update. berikut adalah Command untuk melakukan update Git di Windows :</p><p></p><pre><code>git update-git-for-windows</code></pre><p></p><p>Diatas adalah command terbaru, command yang sebelumnya lebih simple, cukup mengetikan <i>git update</i>, hanya saja command itu sudah depricated. Dan jika kamu menggunakan command itu akan ada Warning Message seperti ini :</p><p></p><blockquote>Warning! `git update` has been deprecated;<br />Please use `git update-git-for-windows` instead.</blockquote><p></p><p>Dan setelahnya kamu akan otomatis di alihkan ke command <i>git update-git-for-windows</i>, kemudian melanjutkan proses updatenya, seperti gambar tangkapan layar dibawah :</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJ-GyMneLlbWlnZMvUkf5jULSnw5zPVQWc4nrfc5iDQQSscvnwhur1WgBGOnKTk5oAZq0Zm28a_yaP2LgNXIWnixWgCVX4mroFA8FQfIltUi7GEKEfVQGjdTvN9JraqIRj75-iVlKtFjv-R1Ia81LpuvNuEc7QuBIl292RXvvbSZnePziNFwfTzOUkqCU/s1113/git%20-%20update%20command.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img alt="Cara mudah update Git Software di Windows" border="0" data-original-height="626" data-original-width="1113" height="225" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJ-GyMneLlbWlnZMvUkf5jULSnw5zPVQWc4nrfc5iDQQSscvnwhur1WgBGOnKTk5oAZq0Zm28a_yaP2LgNXIWnixWgCVX4mroFA8FQfIltUi7GEKEfVQGjdTvN9JraqIRj75-iVlKtFjv-R1Ia81LpuvNuEc7QuBIl292RXvvbSZnePziNFwfTzOUkqCU/w400-h225/git%20-%20update%20command.png" title="Cara mudah update Git Software di Windows" width="400" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Update process</td></tr></tbody></table><br /><p>Tunggu sampai proses downloadnya selesai, kemudian setelah itu akan otomatis muncul popup konfirmasi dari windows, dan akan di lanjut ketahap instalasi dengan tampilan wizard pada umumnya.</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBTG49bLx_Pl5ftdZMDhLFcUt_urCuTXtM_W_Ca9cG4UPDjdiazwWXilp44uQE1wwNcWGIEjLRShDECKmbyf3kuAE8PQ3sXxOD1xXzT0DYD0PfCeNEJZAtoLqjXMPa1F6Kr-tCRrVoH6ydnA28VR5zHQc5wUd57vn7eR6Ej7I85nnYPgq3DzT4-ezkkAA/s513/git%20-%20wizard%20installation.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img alt="Cara mudah update Git Software di Windows" border="0" data-original-height="399" data-original-width="513" height="311" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBTG49bLx_Pl5ftdZMDhLFcUt_urCuTXtM_W_Ca9cG4UPDjdiazwWXilp44uQE1wwNcWGIEjLRShDECKmbyf3kuAE8PQ3sXxOD1xXzT0DYD0PfCeNEJZAtoLqjXMPa1F6Kr-tCRrVoH6ydnA28VR5zHQc5wUd57vn7eR6Ej7I85nnYPgq3DzT4-ezkkAA/w400-h311/git%20-%20wizard%20installation.png" title="Cara mudah update Git Software di Windows" width="400" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Wizard Step Installation</td></tr></tbody></table><br /><p>Kurang lebih seperti caranya. Mungkin cukup sekian dulu untuk pembahasan kali ini, semoga bermanfaat, Terimakasih :)</p><p><br /></p><p><br /></p><p><br /></p>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-19815240165401215492023-12-01T14:13:00.004+07:002023-12-27T12:45:58.224+07:00Android Studio Hedgehog new update di bulan November membawa UI baru dengan tema Material Design Google<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdgRxMgXykjgDrGqdphLr0E9RT-miHGjpP3Cz-3doOO7gQaCtt1JHiKZEkCsHrBMOWG8jJIJKDTu-Aftx_JC4rmZCBW9DNSm6qfn15q_iCOuGTYyPFKERIwWYPHtnE7gkZG0iLNJWZ_Kjgcs3v-lrHxtMLkvXQcjMDo7cRplvCl7e5Lf6t5qrE6JsfbKM/s640/android%20-%20New.png" style="margin-left: 1em; margin-right: 1em;"><img alt="Android Studio Hedgehog new update di bulan November membawa UI baru dengan tema material Design Google" border="0" data-original-height="400" data-original-width="640" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdgRxMgXykjgDrGqdphLr0E9RT-miHGjpP3Cz-3doOO7gQaCtt1JHiKZEkCsHrBMOWG8jJIJKDTu-Aftx_JC4rmZCBW9DNSm6qfn15q_iCOuGTYyPFKERIwWYPHtnE7gkZG0iLNJWZ_Kjgcs3v-lrHxtMLkvXQcjMDo7cRplvCl7e5Lf6t5qrE6JsfbKM/w640-h400/android%20-%20New.png" title="Android Studio Hedgehog new update di bulan November membawa UI baru dengan tema material Design Google" width="640" /></a></div><br /><p>Pada tanggal 9 November 2023 Andorid Studio merilis versi terbarunya dengan nama Hedgehog atau dalam bahasan indonesia bisa di sebut Landak Mini. Saya sendiri baru melakukan update di akhir november 2023.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDSBwQcpnr6fpKL7oKZ38uVy9VTmjkGwOGs_6-uvB6fukAW8yaiVV-mv5G0DfTewuDkl_e-5VCrDmBSulVLp_OWN4nWbziJT-HRzbSJFviSZJUYkOuHdpm-133yDsKfiVQUc-A5I4C7jqXVyXBNlMakutkDHNE2wXmhGyeu963tiFGGXDikJ9h71I2Q-Q/s511/android%20-%20about.png" style="margin-left: 1em; margin-right: 1em;"><img alt="Android Studio Hedgehog new update di bulan November membawa UI baru dengan tema material Design Google" border="0" data-original-height="291" data-original-width="511" height="228" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDSBwQcpnr6fpKL7oKZ38uVy9VTmjkGwOGs_6-uvB6fukAW8yaiVV-mv5G0DfTewuDkl_e-5VCrDmBSulVLp_OWN4nWbziJT-HRzbSJFviSZJUYkOuHdpm-133yDsKfiVQUc-A5I4C7jqXVyXBNlMakutkDHNE2wXmhGyeu963tiFGGXDikJ9h71I2Q-Q/w400-h228/android%20-%20about.png" title="Android Studio Hedgehog new update di bulan November membawa UI baru dengan tema material Design Google" width="400" /></a></div><br /><p>Di update terbarunya ini, Android Studio membawa tema Material Design dari Google. Kesan pertama ketika melihat UI-nya, terasa waahh, Minimalis, Bersih dan terasa megah. Di ikuti dengan icon-icon yang terlah di Enhance mengikuti Patern dari Material Design yang cukup memanjakan mata ketika melihatnya. Berikut adalah gambar tampilan sebelum dan sesudah Update :</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihkdh-EQOHQd_7jRHrRY1MPjXxUtsBkFyUUc6RHYWJLsy5bh8QbVSbFq0xiQimnY_l-5ORF4DBHCJHRr2ABlz9cTx2hbu8NlaOoYOxDHchC-hj92C3iGQSZLr5lC-YhnLuCdZI2RcJifrfx7xwFIQ2PHxkhgqdTCYpmXMryZvhFkfS3mBpd1vyPsKfNu8/s1920/android%20-%20Old%20UI.png" style="margin-left: auto; margin-right: auto;"><img alt="Old UI Andorid Studio" border="0" data-original-height="1030" data-original-width="1920" height="344" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihkdh-EQOHQd_7jRHrRY1MPjXxUtsBkFyUUc6RHYWJLsy5bh8QbVSbFq0xiQimnY_l-5ORF4DBHCJHRr2ABlz9cTx2hbu8NlaOoYOxDHchC-hj92C3iGQSZLr5lC-YhnLuCdZI2RcJifrfx7xwFIQ2PHxkhgqdTCYpmXMryZvhFkfS3mBpd1vyPsKfNu8/w640-h344/android%20-%20Old%20UI.png" title="Old UI Andorid Studio" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Old UI</td></tr></tbody></table><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_5cGPGBjnTwmMs-vz7BaKXQqSB2gumtNNgV8eiAxSiA5zUdQlwwPn5vqWKFov2G65eQc0bUr1yrBj55Y0TLb_QKftJeyMB3t3N1nKBxyAu74laXFk4JmU1c4zd3RJwvF5O9Pfl9tb38MkJtO3Fvp6cscZyX3KuAFBWzqzwSktX6TnZzmykN_C7aGnNz4/s1920/android%20-%20New%20UI.png" style="margin-left: auto; margin-right: auto;"><img alt="New UI Andorid Studio - Material Design Google" border="0" data-original-height="1032" data-original-width="1920" height="344" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_5cGPGBjnTwmMs-vz7BaKXQqSB2gumtNNgV8eiAxSiA5zUdQlwwPn5vqWKFov2G65eQc0bUr1yrBj55Y0TLb_QKftJeyMB3t3N1nKBxyAu74laXFk4JmU1c4zd3RJwvF5O9Pfl9tb38MkJtO3Fvp6cscZyX3KuAFBWzqzwSktX6TnZzmykN_C7aGnNz4/w640-h344/android%20-%20New%20UI.png" title="New UI Andorid Studio - Material Design Google" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">New UI</td></tr></tbody></table><br /><p>Pada saat melakulan update, kamu tidak langsung disuguhkan dengan UI baru, tapi kamu harus mengubahnya secara manual, dikarenakan UI baru ini belum sepenuhnya rilis, tetapi masih dalam versi Beta. Untuk mengubah UI-nya cari icon Gear yang berada di pojok kanan atas, kemudian klik <i>"Enable New UI"</i>, seperti gambar dibawah ini :</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjktmrRgnyFr9JkezWghV7CfvO6i0T6YXrLMRt7lo3jFjBwSFOpdHSNu2gqQq25UO-RCpja74q5Df5LeADBdjzYSuPJIHYw2-BjUJn_K2Er3uStyEQ-e1w4LCbpwfT5GXzGE8hIuthmsgT4p8fzeCg7_geOf70Xdc-OiwJNh9UneyCd0dfADm8MrKTRM3w/s379/android%20-%20switch%20to%20New%20UI.png" style="margin-left: auto; margin-right: auto;"><img alt="Android Studio Hedgehog new update di bulan November membawa UI baru dengan tema material Design Google" border="0" data-original-height="375" data-original-width="379" height="317" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjktmrRgnyFr9JkezWghV7CfvO6i0T6YXrLMRt7lo3jFjBwSFOpdHSNu2gqQq25UO-RCpja74q5Df5LeADBdjzYSuPJIHYw2-BjUJn_K2Er3uStyEQ-e1w4LCbpwfT5GXzGE8hIuthmsgT4p8fzeCg7_geOf70Xdc-OiwJNh9UneyCd0dfADm8MrKTRM3w/w320-h317/android%20-%20switch%20to%20New%20UI.png" title="Android Studio Hedgehog new update di bulan November membawa UI baru dengan tema material Design Google" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Menu for Switch to New UI</td></tr></tbody></table><br /><p>Sebenarnya update UI ini sedikit tertinggal dari saudaranya, yaitu <i>IntelliJ IDEA</i>. IntelliJ IDEA sudah terlebih dahulu mengadaptasi Material Design kedalam IDE-nya. Namun itu tidak menjadi masalah besar. Karna ini bukan persoalan mana yang duluan dan mana yang belakangan. Ini hanya soal UI, dan pada akhirnya semua akan kebagian giliran.</p><p>Mungkin cukup itu saja yang dapat saya sampaikan, kurang lebihnya saya mohon maaf, Terima Kasih :)</p><p><br /></p><p><br /></p><p><br /></p>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-70757857888400593752023-11-29T14:52:00.004+07:002023-12-27T12:45:58.261+07:00Hati-hati! Apakah docker desktop 100% gratis? Siapa yang harus membayar Docker Desktop?<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiX3SUnKAsRNv5fBIjRuqwqJXEPrminOCaIn9xBUyb7YtGctjpzS3fn2FWWwbKYrD2Rl5cK802PvNaV6lSrkRHqN4DTinCetSZ_GfqFm2NIowWosuK8y9g84u-Jrw8t89IZUUQFVkSvrDcX8Bx0EnR3i5vQ6tn976rFeUnjMyV6SQQSS3C2HtuCx14SLVE/s1920/pay-docker.webp" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Hati-hati! Apakah docker desktop 100% gratis? Siapa yang harus membayar Docker Desktop?" border="0" data-original-height="1080" data-original-width="1920" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiX3SUnKAsRNv5fBIjRuqwqJXEPrminOCaIn9xBUyb7YtGctjpzS3fn2FWWwbKYrD2Rl5cK802PvNaV6lSrkRHqN4DTinCetSZ_GfqFm2NIowWosuK8y9g84u-Jrw8t89IZUUQFVkSvrDcX8Bx0EnR3i5vQ6tn976rFeUnjMyV6SQQSS3C2HtuCx14SLVE/w640-h360/pay-docker.webp" title="Hati-hati! Apakah docker desktop 100% gratis? Siapa yang harus membayar Docker Desktop?" width="640" /></a></div><p>Untuk kawan-kawan programmer harap berhati-hati menggunakan Docker desktop, Per tanggal artikel ini di tulis Docker sudah mengubah Lisensinya yang mulanya Free Total menjadi Free Khusus untuk perusahaan dengan karyawan dibawah 250 orang atau revenue dibawah $10 million (kurang lebih Rp 150 miliyar). Jika perusahaan tempat bekerja kawan-kawan mempunyai lebih dari 250 orang, maka kawan-kawan wajib membayar.</p><p>Keterangan di atas dapat kamu lihat di website resmi Docker-nya langsung (<a href="https://www.docker.com/pricing/faq/" rel="nofollow" target="_blank"><i><b>Baca disini</b></i></a>), keterangannya seperti tangkapan layar di bawah ini, lihat pada teks yang ditandai merah :</p><p><br /></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgj1D6ZIUoaI1RrEu7XlokIebTHFCjY5hdIhMtFKr3yAS_b_OL-lDNqYMXJD5JVuJ6KEESADMeS2YfYEqPG9VFtUu9eAtn2GL-ohOnbj8Or3OiiDM6olhmgCtiufVcIrp6RRCWUEcviqnM_yue1C0bRC96WIU1Gw16zNPThpg-lvqBaO0hAG_H650lkkWI/s1413/docker-1.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img alt="Hati-hati! Apakah docker desktop 100% gratis? Siapa yang harus membayar Docker Desktop?" border="0" data-original-height="769" data-original-width="1413" height="347" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgj1D6ZIUoaI1RrEu7XlokIebTHFCjY5hdIhMtFKr3yAS_b_OL-lDNqYMXJD5JVuJ6KEESADMeS2YfYEqPG9VFtUu9eAtn2GL-ohOnbj8Or3OiiDM6olhmgCtiufVcIrp6RRCWUEcviqnM_yue1C0bRC96WIU1Gw16zNPThpg-lvqBaO0hAG_H650lkkWI/w640-h347/docker-1.png" title="Hati-hati! Apakah docker desktop 100% gratis? Siapa yang harus membayar Docker Desktop?" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Pricing Page : https://www.docker.com/pricing</td></tr></tbody></table><div class="separator" style="clear: both; text-align: center;"><br /></div><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhS3xt00DGso-0R6Lmft64qnvTaOoGd1SI2G2t6fsMpjwCT9hmro4NY7D1WBHNvpnXv2lho45L2jgqhHRqFFk0SLMRfGSrBpQ4M7sOHFRhusgUjTcfiJA00UkfG6NSI5p7gJl6B-XlBDv8H4RpEXZ13r6QWGPrMyfZ7AkbV2HObe1OkZzLP2BC_R6qCFVs/s1897/docker-2.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img alt="Hati-hati! Apakah docker desktop 100% gratis? Siapa yang harus membayar Docker Desktop?" border="0" data-original-height="923" data-original-width="1897" height="312" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhS3xt00DGso-0R6Lmft64qnvTaOoGd1SI2G2t6fsMpjwCT9hmro4NY7D1WBHNvpnXv2lho45L2jgqhHRqFFk0SLMRfGSrBpQ4M7sOHFRhusgUjTcfiJA00UkfG6NSI5p7gJl6B-XlBDv8H4RpEXZ13r6QWGPrMyfZ7AkbV2HObe1OkZzLP2BC_R6qCFVs/w640-h312/docker-2.png" title="Hati-hati! Apakah docker desktop 100% gratis? Siapa yang harus membayar Docker Desktop?" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Pricing FAQ Page : https://www.docker.com/pricing/faq</td></tr></tbody></table><p><br /></p><p>Jika tempat kerja kamu merupakan perusahaan besar, dan ingin menghindari pembayaran Docker, kamu dapat menggunakan alternatif Docker, walau ini alternatif kamu jangan kwatir, aplikasi ini tetap kompatibel dengan Docker File.</p><p>Ada 2 aplikasi yang mungkin dapat kamu gunakan, diantaranya :</p><p><br /></p><p><b>1. PODMAN</b> (<a href="https://podman.io" rel="nofollow" target="_blank">https://podman.io</a>)</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtfNgLnFHvxSjhxlbmvgr16KiyH9LRdo-eHzfFCAugg-kfaQ9Glt29WXnJQAPVtbv980tgBfnhkmV-nHk-ofBdTa05LBLh0fchbZ_-d1N-dOlfloCc2TaLRlKn5YKID9vTB763DSchvA1MY-15bBDyfJiCtBKRGHUpG7b9oDd9p8l5tGnpF47_1SCrJVo/s1892/podman.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Podman, Manage containers, pods, and images with Podman. Seamlessly work with containers and Kubernetes from your local environment." border="0" data-original-height="923" data-original-width="1892" height="312" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtfNgLnFHvxSjhxlbmvgr16KiyH9LRdo-eHzfFCAugg-kfaQ9Glt29WXnJQAPVtbv980tgBfnhkmV-nHk-ofBdTa05LBLh0fchbZ_-d1N-dOlfloCc2TaLRlKn5YKID9vTB763DSchvA1MY-15bBDyfJiCtBKRGHUpG7b9oDd9p8l5tGnpF47_1SCrJVo/w640-h312/podman.png" title="Podman, Manage containers, pods, and images with Podman. Seamlessly work with containers and Kubernetes from your local environment." width="640" /></a></div><p><br /></p><p><b>2. RANCHER</b> (<a href="https://rancherdesktop.io/" rel="nofollow" target="_blank">https://rancherdesktop.io</a>)</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSKcnXxTtE_29LJ1mPrg_LMNXPNwGQGyWKJ12rGsstvsa1vyGi7Vmj6LA_1PLnGH801L9xE9grLGJh25C1XBw9q0UAWKr8nuPAC6arjSqxF9qqJTOrUhiOBX4QoM2hHEfFM8bDYsp6vQCn61kth6HYg9z5irYG1Dh3RKDL-UopT7WPvn8z1caBV0lJnyo/s1890/rancher.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Rancher, Container Management and Kubernetes on the Desktop An open-source application that provides all the essentials to work with containers and Kubernetes on the desktop" border="0" data-original-height="923" data-original-width="1890" height="312" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSKcnXxTtE_29LJ1mPrg_LMNXPNwGQGyWKJ12rGsstvsa1vyGi7Vmj6LA_1PLnGH801L9xE9grLGJh25C1XBw9q0UAWKr8nuPAC6arjSqxF9qqJTOrUhiOBX4QoM2hHEfFM8bDYsp6vQCn61kth6HYg9z5irYG1Dh3RKDL-UopT7WPvn8z1caBV0lJnyo/w640-h312/rancher.png" title="Rancher, Container Management and Kubernetes on the Desktop An open-source application that provides all the essentials to work with containers and Kubernetes on the desktop" width="640" /></a></div><br /><p>Mungkin cukup sekian dulu untuk artikel kali ini, semoga informasi ini bermanfaat, terima kasih :)</p><p><br /></p><p><br /></p>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-37332163453197042132023-10-21T21:34:00.004+07:002023-12-27T12:45:58.235+07:00Cara mudah memahami Array Method di Javascript seperti Push Unshift Pop Shift dan lainnya<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSA2TiNc_9Pc-JfRquZoLosoe_dYmC7Y8Aab_f_egXBWlMV1ghrCpIC7zRD8X0kfxdvDYA2zZ9pfgvMcWng9f4iOHwzVxfBIeJSAj-jZP3jD2ye_rRI44Xvz7g9ZJwHpPuIjq7fS9PyMLch-IQ7worg3XyHqOA3m7ogkvu2Lw7LQMyBN2BeccS7T3w7TQ/s1200/array-method-banner.webp" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mudah memahami Array Method di Javascript seperti Push Unshift Pop Shift dan lainnya" border="0" data-original-height="630" data-original-width="1200" height="336" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSA2TiNc_9Pc-JfRquZoLosoe_dYmC7Y8Aab_f_egXBWlMV1ghrCpIC7zRD8X0kfxdvDYA2zZ9pfgvMcWng9f4iOHwzVxfBIeJSAj-jZP3jD2ye_rRI44Xvz7g9ZJwHpPuIjq7fS9PyMLch-IQ7worg3XyHqOA3m7ogkvu2Lw7LQMyBN2BeccS7T3w7TQ/w640-h336/array-method-banner.webp" title="Cara mudah memahami Array Method di Javascript seperti Push Unshift Pop Shift dan lainnya" width="640" /></a></div><p>Banyak sekali Array Method di Javascript, tentu bakal terlalu panjang jika dibahas semua, agar pembahasan tidak terlalu meluas, pada pembahasan ini saya akan membatasinya, berikut adalah poin yang akan saya bahas :</p><p></p><ol style="text-align: left;"><li>Push</li><li>Unshift</li><li>Pop</li><li>Shift</li><li>Filter</li><li>Map</li><li>Join</li><li>Concat</li><li>Flat</li><li>Slice</li></ol><p></p><p>Kurang lebih ada 10 poin yang akan coba di bahas.Dipembahasan kali ini mungkin tidak akan terpaku pada koding, disini saya ingin coba memberikan gambaran dasar tentang bagaimana Array Method itu bekerja.</p><p></p><h3 style="text-align: left;">Push</h3>Metode push() berfungsi untuk menambahkan item baru ke akhir array. Metode push() mengubah panjang array. Metode push() mengembalikan panjang array baru.<p></p><p></p><h3 style="text-align: left;">Unshift</h3>Metode unshift() berfungsi untuk menambahkan elemen baru ke awal array. Metode unshift() akan menimpa array asli.<p></p><p></p><h3 style="text-align: left;">Pop</h3>Metode pop() berfungsi untuk menghapus (memunculkan) elemen terakhir dari sebuah array. Metode pop() mengubah array asli. Metode pop() mengembalikan elemen yang dihapus.<p></p><p></p><h3 style="text-align: left;">Shift</h3>Metode shift() adalah kebalikan dari unshift(), berfungsi untuk menghapus item pertama dari sebuah array. Metode shift() mengubah array asli. Metode shift() mengembalikan elemen yang digeser.<p></p><p></p><h3 style="text-align: left;">Filter</h3>Metode filter() membuat array baru berisi elemen yang lolos pengujian yang disediakan oleh suatu fungsi.<p></p><p></p><h3 style="text-align: left;">Map</h3>map() berfungsi untuk membuat array baru dengan memanggil fungsi untuk setiap elemen array. map() tidak menjalankan fungsi untuk elemen kosong. map() tidak mengubah array asli.<br /><p></p><p></p><h3 style="text-align: left;">Concat</h3>Metode concat() berfungsi untuk menggabungkan dua atau lebih array. Metode concat() mengembalikan array baru, yang berisi array yang digabungkan. Metode concat() tidak mengubah array yang ada.<p></p><p></p><h3 style="text-align: left;">Flat</h3>Metode flat() berfungsi untuk menggabungkan elemen sub-array.<p></p><p></p><h3 style="text-align: left;">Slice</h3>Metode slice() atau metode Irisan berfungsi untuk mengembalikan elemen yang dipilih dalam array, sebagai array baru. Metode slice() memilih dari awal tertentu, hingga akhir tertentu (tidak inklusif). Metode slice() tidak mengubah array asli.<p></p><p><br /></p><p>Dari penjelasan diatas mungkin kamu masih merasa bingung untuk membayangkan bagaimana bentuk visual dari cara kerja metode-metode diatas. Agar lebih jelas saya akan coba memperlihatkan visualnya dalam bentuk gambar, mungkin dengan melihat gambar dibawah ini, kamu dapat membayangkan dengan lebih jelas.</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSwilQx7llU8vVI4e_huTZ3B4QnM3WxS7zQHQzmeIthlWa6McRlmEp7fkBrGo4biJ54Yw4DCSQnBYViAmzWqEu-XUqf-hKStp-dy39rIkOYzOYhnW2q0rysSS4TVb7RtprxV00UsXuuDjtAXCwt5mX-ZvZrp1vqEMuzhMHX6wkXLcrCYMYqvdQXo8v7dg/s2336/array-method.webp" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img alt="Cara mudah memahami Array Method di Javascript seperti Push Unshift Pop Shift dan lainnya" border="0" data-original-height="1728" data-original-width="2336" height="474" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSwilQx7llU8vVI4e_huTZ3B4QnM3WxS7zQHQzmeIthlWa6McRlmEp7fkBrGo4biJ54Yw4DCSQnBYViAmzWqEu-XUqf-hKStp-dy39rIkOYzOYhnW2q0rysSS4TVb7RtprxV00UsXuuDjtAXCwt5mX-ZvZrp1vqEMuzhMHX6wkXLcrCYMYqvdQXo8v7dg/w640-h474/array-method.webp" title="Cara mudah memahami Array Method di Javascript seperti Push Unshift Pop Shift dan lainnya" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;"><i>This Image created by David Mraz (instagram : @davidm_ai)</i></td></tr></tbody></table><br /><p>Bagaimana? apa ada lebih banyak gambaran tentang Method Array diatas?</p><p>Mungkin cukup sekian untuk pembahasan kali ini, semoga bermanfaat, terimakasih :)</p><p><br /></p><p><br /></p>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-64792458067107511452023-10-20T21:28:00.005+07:002023-12-27T12:45:58.257+07:00Cara mudah menghindari pemblokiran Extension Adblock pada Browser di Website Youtube<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjriKwzdAhMxQkFUTOnAc8EIhdDPyB06OjqysHrR_E7IYvgfi4YVLODc03-UVsVcTJwQK8PiLAesnu71wynuNhPDiiAfjMrHlq4WP5Mb1Gy3tfww3vFUSf9WzM27OR5XVI4BQPytbZS872NJhrxjjb19PSw24cWefVqUu-1_6Dr3-eNc8vP5j6kK-vxlVxl/s1280/youtube-block-adblock.webp" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mudah menghindari pemblokiran Extension Browser Adblock di Website Youtube" border="0" data-original-height="724" data-original-width="1280" height="362" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjriKwzdAhMxQkFUTOnAc8EIhdDPyB06OjqysHrR_E7IYvgfi4YVLODc03-UVsVcTJwQK8PiLAesnu71wynuNhPDiiAfjMrHlq4WP5Mb1Gy3tfww3vFUSf9WzM27OR5XVI4BQPytbZS872NJhrxjjb19PSw24cWefVqUu-1_6Dr3-eNc8vP5j6kK-vxlVxl/w640-h362/youtube-block-adblock.webp" title="Cara mudah menghindari pemblokiran Extension Browser Adblock di Website Youtube" width="640" /></a></div><p>Saat ini Youtube sudah memasang sebuah proteksi konten, dimana untuk para pengguna Youtube yang menggunakan Extension Adblock, Adblock Plus dan sebagainya di Browser tidak akan bisa memutar konten Video Youtube. </p><p>Pada tahap awal pihak Youtube akan memberikan peringatan berupa papan peringatan yang menginformasikan kepada kita untuk mematikan Extension Pemblokiran Iklan. Lalu jika kamu mengabaikan peringatan itu sampai kurang lebih sebanyak 3x, maka Website Youtube akan memblokir kamu secara penuh, sehingga kamu tidak bisa menonton Video Youtube sama sekali. Namun pemblokiran penuh ini akan mati jika kamu mematikan Extension Pemblokiran Iklan di Browser kamu.</p><p>Bagi kamu pengguna Extension Pemblokiran Ikan (Adblock dan lainnya) jangan bersedih, untuk kamu yang memang tidak suka dengan iklan di Youtube, kamu dapat melakukan pemblokiran iklan tanpa harus terkena pemblokiran Youtube. </p><p>Ada beberapa cara untuk untuk melakukan-nya :</p><p></p><ul style="text-align: left;"><li>Ubah DNS PC atau Laptop kamu ke AdGuard DNS (Free)</li><li>Ubah DNS Browser kamu ke AdGuard DNS (Free)</li><li>Gunakan Aplikasi AdGuard di PC atau Laptop (Paid)</li><li>Gunakan Extension AdGuard pada Browser (Free)</li></ul>Dari beberapa cara di atas sebenarnya hanya ada satu solusi, yaitu AdGuard, namun caranya yang berbeda-beda. Saya akan coba bahas beberapa poin-nya secara rinci.<p></p><h2 style="text-align: left;">UBAH DNS PC ATAU LAPTOP KE ADGUARD</h2><p>Caranya kurang lebih sebagai berikut <i>(saya menggunakan cara ini di windows 11)</i> :</p><p><b>Pertama<br /></b>Buka aplikasi PowerShell pada windows kamu</p><p><b>Kedua<br /></b>Jalankan perintah berikut :</p><pre><code>netsh dns add encryption server=94.140.14.14 dohtemplate=https://dns.adguard.com/dns-query autoupgrade=yes udpfallback=no
netsh dns add encryption server=94.140.15.15 dohtemplate=https://dns.adguard.com/dns-query autoupgrade=yes udpfallback=no
netsh dns add encryption server=2a10:50c0::ad1:ff dohtemplate=https://dns.adguard.com/dns-query autoupgrade=yes udpfallback=no
netsh dns add encryption server=2a10:50c0::ad2:ff dohtemplate=https://dns.adguard.com/dns-query autoupgrade=yes udpfallback=no</code></pre><p></p><p><b>Ketiga<br /></b>Lengkapnya lihat disini :</p><p></p><ul style="text-align: left;"><li><a href="https://gist.github.com/krcm0209/2d8ceb00ebf5b6113d920b8120913c02" rel="nofollow" target="_blank">https://gist.github.com/krcm0209/2d8ceb00ebf5b6113d920b8120913c02</a><br /></li><li><a href="https://gist.github.com/dyazincahya/524c45900fc1a0157a9d85dd0c4a4c88" rel="nofollow" target="_blank">https://gist.github.com/dyazincahya/524c45900fc1a0157a9d85dd0c4a4c88</a><br /></li></ul><br /><h2 style="text-align: left;">UBAH DNS BROWSER KE ADGUARD</h2><p></p><p>Pada contoh kali ini saya menggunakan <i>Google Chrome 118.0.5993.88.</i> Jika kamu menggunakan Browser yang berbeda dengan saya, sebenarnya caranya sama saja, yang berbeda hanya di letak menu DNS-nya saja.</p><p><b>Pertama<br /></b>Masuk menu <i>Settings > Privacy & Security > Security</i>, kemudian scroll ke bawah, nanti kamu akan menemukan menu dengan nama : <i>Use Secure DNS</i>.</p><p><b>Kedua<br /></b>Pilih opsi With, lalu pada pilihan combobox pilih opsi Custom, kemudian masukan Link DNS AdGuardnya ini <i>https://dns.adguard-dns.com/dns-query</i>. Kurang lebih seperti gambar dibawah ini :</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIcf0ycvM23AjjasuiKoS7QMsR01XMa5nDxP0M72wRSvOqC3-kE1v57BhwYcMstWgugYSD_mrNLg06wWOaRdTvjgnY1X7vZchzmdW-7etqX2hCEyuAHlUZJ6OBnEE5gCcKX3wM2fJurcsH_j5qOIkGZtp5fdtmWT0-nJijFYanwaMHaww6-Dxw6DuQTwlc/s704/youtube-block-adblock-2.webp" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mudah menghindari pemblokiran Extension Browser Adblock di Website Youtube" border="0" data-original-height="240" data-original-width="704" height="136" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIcf0ycvM23AjjasuiKoS7QMsR01XMa5nDxP0M72wRSvOqC3-kE1v57BhwYcMstWgugYSD_mrNLg06wWOaRdTvjgnY1X7vZchzmdW-7etqX2hCEyuAHlUZJ6OBnEE5gCcKX3wM2fJurcsH_j5qOIkGZtp5fdtmWT0-nJijFYanwaMHaww6-Dxw6DuQTwlc/w400-h136/youtube-block-adblock-2.webp" title="Cara mudah menghindari pemblokiran Extension Browser Adblock di Website Youtube" width="400" /></a></div><br /><p>Sebenarnya ada banyak pilihan untuk DNS AdGuard, yang ada di atas hanya link DNS yang umum di gunakan, selengkapnya bisa lihat disini : <a href="https://adguard-dns.io/en/public-dns.html" rel="nofollow" target="_blank">https://adguard-dns.io/en/public-dns.html</a></p><p><br /></p><h2 style="text-align: left;">GUNAKAN EXTENSION ADGUARD DI BROWSER</h2><p>Cara ini sangat mudah digunakan, untuk <i>Browser Chrome</i>, kamu tinggal masuk ke <i>Chrome Web Store</i>, lalu pasang extension <i>AdGuard</i> pada browser kamu, selesai.</p><p><br /></p><p>Cara-cara diatas kamu dapat lakukan semua, saya pribadi menggunakan cara satu (Ubah DNS PC) dan cara tiga (Gunakan Extension AdGuard Browser). Semua itu tergantung keinginan masing-masing. Setelah menggunakan cara ini seharusnya kamu dapat menonton youtube tanpa iklan dengan lancar.</p><p>Kurang lebih sampai disini dulu untuk pembahasan kali ini, semoga bermanfaat, terima kasih :)</p><p><br /></p><p><br /></p>Kang cahyahttp://www.blogger.com/profile/11037249477300036688noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-17429130565599379072023-10-16T21:13:00.005+07:002023-12-27T12:45:58.222+07:00Cara mudah membuat vertical scroll atau snappping scoll dengan Jquery<p> <a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-ZNqDL13HbC9QFoS2lmdO6XoUIeq9T8ZsM9swgkaMwCVbfn_ncBmNmfzL-TNm6jfvRu4kGQ0nY5kezaAEys1yd8hyphenhyphenNSFtkGBuTSnjAR_eLePRmjmYEDUxJ6UCFls5xleoiARZQa3O-BSROUxpvScYZRZrz057VnkDg6L2rfK6CeSLosw4jPS8_rGxkj_u/s1200/vertical-scroll-snapping-scroll-jquery.webp" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img alt="Cara mudah membuat vertical scroll atau snappping scoll dengan Jquery" border="0" data-original-height="630" data-original-width="1200" height="336" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-ZNqDL13HbC9QFoS2lmdO6XoUIeq9T8ZsM9swgkaMwCVbfn_ncBmNmfzL-TNm6jfvRu4kGQ0nY5kezaAEys1yd8hyphenhyphenNSFtkGBuTSnjAR_eLePRmjmYEDUxJ6UCFls5xleoiARZQa3O-BSROUxpvScYZRZrz057VnkDg6L2rfK6CeSLosw4jPS8_rGxkj_u/w640-h336/vertical-scroll-snapping-scroll-jquery.webp" title="Cara mudah membuat vertical scroll atau snappping scoll dengan Jquery" width="640" /></a></p><br /><p></p><p>Pada pembahasan kali ini saya akan sedikit membahas <i>cara mudah membuat vertical scroll atau mungkin yang disebut snapping scroll dengan jquery</i>. Cara ini biasanya digunakan saat ingin membuat website dengan konsep one page atau parallax, website seperti ini biasanya hanya mempunyai satu halaman dan dalam satu halaman itu memuat beberapa informasi yang di bagi jadi beberapa section, kurang lebih ilustrasi struktur web-nya seperti dibawah ini :</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirVguI6MwsGcbdn43SorT43m6g8i-yuXma6EzKWad7No6VRMdDDWZDPyu_hc0xxMHrEq2EGhyuMcS1FFutfjJMSETB0o-G1lgDlnXRww94o39CO2UScuN_ZkqzX-6lE6BYBuXFIRRZVuc5bpkuPVjsOjmtjL2hRgvCuByYzB9RU9EipvzkSnXH1wD9Zi_P/s1920/vertical-scroll-snapping-scroll-jquery-2.webp" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mudah membuat vertical scroll atau snappping scoll dengan Jquery" border="0" data-original-height="1920" data-original-width="1080" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirVguI6MwsGcbdn43SorT43m6g8i-yuXma6EzKWad7No6VRMdDDWZDPyu_hc0xxMHrEq2EGhyuMcS1FFutfjJMSETB0o-G1lgDlnXRww94o39CO2UScuN_ZkqzX-6lE6BYBuXFIRRZVuc5bpkuPVjsOjmtjL2hRgvCuByYzB9RU9EipvzkSnXH1wD9Zi_P/w225-h400/vertical-scroll-snapping-scroll-jquery-2.webp" title="Cara mudah membuat vertical scroll atau snappping scoll dengan Jquery" width="225" /></a></div><br /><p>Gambar di atas hanya contoh saja, untuk section-nya sendiri tergantung requrement masing-masing project. Tapi secara garis besar kurang lebih seperti itu bentuknya.</p><p>Pada kasus ini saya akan menggunakan jQuery, kodenya sangat sederhana, mungkin nanti kamu bisa modifikasi kebentuk yang lebih advance jika memang dibutuhkan. Pada case ini hanya ada 3 file, yakni index.html, style.css dan script.js</p><p><span style="font-size: large;"><b>index.html</b></span></p><p></p><pre><code><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Vertical Scrolling One-Page Website</title>
<link rel="stylesheet" href="styles.css" />
</head>
<body>
<nav>
<ul>
<li><a href="#section1">Section 1</a></li>
<li><a href="#section2">Section 2</a></li>
<li><a href="#section3">Section 3</a></li>
</ul>
</nav>
<section id="section1" style="background-color: #f8bbd0">
<img
src="https://2.bp.blogspot.com/-GU50s5Nbyfg/YFK14bvsxeI/AAAAAAAALcw/KrETjpZrYqwrRkpEaucCbDjPNeIS479hACK4BGAYYCw/s1600/fire.png"
width="100"
/>
<h1>Section 1 : kang-cahya.com</h1>
<!-- Content for Section 1 -->
</section>
<section id="section2" style="background-color: #e1bee7">
<img
src="https://2.bp.blogspot.com/-GU50s5Nbyfg/YFK14bvsxeI/AAAAAAAALcw/KrETjpZrYqwrRkpEaucCbDjPNeIS479hACK4BGAYYCw/s1600/fire.png"
width="100"
/>
<h1>Section 2 : kang-cahya.com</h1>
<!-- Content for Section 2 -->
</section>
<section id="section3" style="background-color: #bbdefb">
<img
src="https://2.bp.blogspot.com/-GU50s5Nbyfg/YFK14bvsxeI/AAAAAAAALcw/KrETjpZrYqwrRkpEaucCbDjPNeIS479hACK4BGAYYCw/s1600/fire.png"
width="100"
/>
<h1>Section 3 : kang-cahya.com</h1>
<!-- Content for Section 3 -->
</section>
<!-- Add more sections as needed -->
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script src="script.js"></script>
</body>
</html></code></pre><p></p><p><span style="font-size: large;"><b>style.css</b></span></p><p></p><pre><code>section {
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
}
nav {
position: fixed;
top: 0;
background: #333;
color: #fff;
}
nav ul {
list-style: none;
padding: 0;
margin: 0;
}
nav li {
display: inline;
margin: 0 20px;
}
nav a {
color: #fff;
text-decoration: none;
}
/* Additional CSS styling for sections and navigation */</code></pre><p></p><p><span style="font-size: large;"><b>script.js</b></span></p><p></p><pre><code>$(document).ready(function () {
var sections = $("section");
var currentSection = 0;
var animationDuration = 500; // Change this value to adjust the response speed
// Scroll to the next or previous section when the user scrolls with the mouse wheel
$(window).on("mousewheel DOMMouseScroll", function (e) {
if (e.originalEvent.wheelDelta > 0 || e.originalEvent.detail < 0) {
currentSection = Math.max(currentSection - 1, 0);
} else {
currentSection = Math.min(currentSection + 1, sections.length - 1);
}
scrollToSection(currentSection);
});
// Handle arrow key navigation
$(document).keydown(function (e) {
if (e.keyCode === 38) {
// Up arrow key
currentSection = Math.max(currentSection - 1, 0);
scrollToSection(currentSection);
} else if (e.keyCode === 40) {
// Down arrow key
currentSection = Math.min(currentSection + 1, sections.length - 1);
scrollToSection(currentSection);
}
});
// Function to scroll to a specific section
function scrollToSection(index) {
var target = sections.eq(index);
$("html, body").animate(
{
scrollTop: target.offset().top,
},
animationDuration
); // Adjust the animation duration here
}
});</code></pre><p></p><p><br /></p><p>Agar lebih memudahkan, kamu dapat melihatnya di jsfiddle berikut ini :</p><p><iframe allowfullscreen="allowfullscreen" allowpaymentrequest="" frameborder="0" height="300" src="//jsfiddle.net/cahyadyazin/dg9bn0xz/embedded/?accentColor=27AE61" width="100%"></iframe></p>Bisa juga mampir ke repositori github-nya : <a href="https://github.com/k4ng/example-vertical-scroll-jquery" rel="nofollow" target="_blank">https://github.com/k4ng/example-vertical-scroll-jquery</a><div><br /></div><div>Kurang lebih sekian dulu untuk artikel ini, semoga bermanfaat, terimakasih :)</div><div><br /></div><div><br /></div>Kang cahyahttp://www.blogger.com/profile/11037249477300036688noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-67938148909795457282023-09-16T05:48:00.001+07:002023-12-27T12:45:58.260+07:00Cara mudah membuat Shared Preferences di Jetpack Compose Kotlin Android<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtKoKOnBaW4Kr5R8a6qKOWbVynEchSMgcphPXmOkM9omd6QlEL49h9PxA_YCULoWT4YU9I8BDFPwF1vs7Pz-hWu_3xbDTijnOmf-5lsd7j_wTgLYTNe7N75JmCR8DwQ58gIWSSQAr5HqeKX-b82F_ez70IzCuXxocgkyqeZAeKmldYorK633fMKGUNHg8e/s480/Jetpack-compose-shared-preferences.webp" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mudah membuat Shared Preferences di Jetpack Compose Kotlin Android" border="0" data-original-height="325" data-original-width="480" height="271" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtKoKOnBaW4Kr5R8a6qKOWbVynEchSMgcphPXmOkM9omd6QlEL49h9PxA_YCULoWT4YU9I8BDFPwF1vs7Pz-hWu_3xbDTijnOmf-5lsd7j_wTgLYTNe7N75JmCR8DwQ58gIWSSQAr5HqeKX-b82F_ez70IzCuXxocgkyqeZAeKmldYorK633fMKGUNHg8e/w400-h271/Jetpack-compose-shared-preferences.webp" title="Cara mudah membuat Shared Preferences di Jetpack Compose Kotlin Android" width="400" /></a></div><br /><p></p><p>Kali ini saya akan membahas tentang <i>Cara Membuat Shared Preferences di Jetpack Compose Kotlin Android</i>, sebelum masuk ke pembahasan, kira-kira apa sih yang di maksud <b>Shared Preferences</b>? Kurang lebih Shared Preferences adalah sebuah Alat atau Fungsi yang dapat kita gunakan untuk menyimpan sebuah data simple di Local Apps Android kita, Shared Preferences ini tidak berdiri sendiri, untuk menggunakannya kita membutuhkan Library yang bernama Datastore, lengkapnya kamu bisa lihat disini : <a href="https://developer.android.com/topic/libraries/architecture/datastore" rel="nofollow" target="_blank">Androidx Datastore</a>. </p><p>Contoh penggunaannya adalah, misal kita ingin membuat sebuah setting pada Aplikasi, kan tidak mungkin settingan tersebut kita simpan di database, walau pada praktiknya bisa saja di lakukan, namun itu bakal ribet dan agak sedikit panjang dalam implementasinya, jadi cara mudah dan sederhananya, kita dapat menyimpan data settingan aplikasi yang kita buat dengan menggunakan Shared Preferences ini.</p><p>Cara menggunakan <i>Shared Preferences</i> di <i>Jetpack Compose</i> ini cukup sederhana, kamu bisa ikuti saja cara berikut ini :</p><p></p><h3 style="text-align: left;">1. Langkah pertama</h3>Tambahkan dulu dependencies datastore-nya pada projek kamu :<p></p><p></p><pre><code>implementation("androidx.datastore:datastore-preferences:1.0.0")</code></pre><p></p><p></p><p style="text-align: left;">Source : <a href="https://developer.android.com/topic/libraries/architecture/datastore" rel="nofollow" target="_blank">https://developer.android.com/topic/libraries/architecture/datastore</a></p><h3 style="text-align: left;">2. Langkah kedua</h3>Buat file kotlin baru dengan nama PreferencesManager, filenya buat saja sejajar dengan file MainActivity.kt, kurang lebih seperti ini :<p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLRsndEWlMPg0vOxWYi2wVJdCmPM7sD-Vwlxb2AeafdHjTXPYeTThiqoWWSkA6cVgue9BXApUHSjD7O0gxTe3M6Cp8fBH0x9Lm7LXkxqtGkpUD0veGtPERgWasPHkr_xUzbbVefWk2QCOTwjdRHlfDucTxGHQYZXTkFbyuouUGoJ0gp9GZh8h-dgpDMN6f/s377/ScreenShot_20230916052537.png" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mudah membuat Shared Preferences di Jetpack Compose Kotlin Android" border="0" data-original-height="277" data-original-width="377" height="294" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLRsndEWlMPg0vOxWYi2wVJdCmPM7sD-Vwlxb2AeafdHjTXPYeTThiqoWWSkA6cVgue9BXApUHSjD7O0gxTe3M6Cp8fBH0x9Lm7LXkxqtGkpUD0veGtPERgWasPHkr_xUzbbVefWk2QCOTwjdRHlfDucTxGHQYZXTkFbyuouUGoJ0gp9GZh8h-dgpDMN6f/w400-h294/ScreenShot_20230916052537.png" title="Cara mudah membuat Shared Preferences di Jetpack Compose Kotlin Android" width="400" /></a></div><br /><p>Kemudian Salin dan Tempel kode PreferencesManager dibawah ini :</p><p></p><pre><code>import android.content.Context
import android.content.SharedPreferences
class PreferencesManager(context: Context) {
private val sharedPreferences: SharedPreferences =
context.getSharedPreferences("MyPrefs", Context.MODE_PRIVATE)
fun saveData(key: String, value: String) {
val editor = sharedPreferences.edit()
editor.putString(key, value)
editor.apply()
}
fun getData(key: String, defaultValue: String = ""): String {
return sharedPreferences.getString(key, defaultValue) ?: defaultValue
}
}</code></pre><p></p><p></p><h3 style="text-align: left;">3. Langkah ketiga</h3>Untuk cara pengimplementasian PreferencesManager-nya kurang lebih seperti ini contoh-nya :<p></p><h4 style="text-align: left;">Kode untuk Menyimpan ke SharedPreferences</h4><p></p><pre><code>val context = LocalContext.current
val preferencesManager = remember { PreferencesManager(context) }
val data = remember { mutableStateOf(preferencesManager.getData("myKey", "")) }
// Update data dan save ke SharedPreferences
// Set myKey sesuai keinginan kamu, myKey ini akan di gunakan kembali saat akan mengambil data dari SharedPreferences
preferencesManager.saveData("myKey", newDataValue)
data.value = newDataValue</code></pre><p></p><h4 style="text-align: left;">Kode untuk Mengambil data dari SharedPreferences</h4><p></p><pre><code>preferencesManager.getData("myKey")</code></pre><p></p><p>Kurang lebih seperti itu cara menggunakan Shared Preferences di Jetpack Compose Kotlin Android, apakah cukup mudah dimengerti? Jika masih kurang paham bisa kirim pertanyaan melalui kolom komentar saja, di usahakan saya akan menjawab pertanyaan kamu segera.</p><p>Terimakasih :)</p><p><br /></p><p><br /></p><p><br /></p>Kang cahyahttp://www.blogger.com/profile/11037249477300036688noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-40572294321558442262023-09-12T15:55:00.006+07:002023-12-27T12:45:58.237+07:00Cara mudah mengganti background color komponen button di Jetpack Compose Kotlin Andorid<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4Yb4w-3ljA1TokJlxp8oUPtaH9Ebxwf5fki8TzF8VWITSK2AvEPwQ2t8ke6iLWSSXrB94KQxetpq-Clj4GrJStDyTl3eL_5z3cTHSNK4LNeUM3MLklZkpCPpoATsBe8q4rDJpEirYfNmTiEIicBqerQIyraFQ2u2cTlfizNXIbBxguJ4sgr-mgcfBoiFr/s480/Jetpack-compose.png" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mudah mengganti background color komponen button di Jetpack Compose Kotlin Andorid" border="0" data-original-height="325" data-original-width="480" height="271" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4Yb4w-3ljA1TokJlxp8oUPtaH9Ebxwf5fki8TzF8VWITSK2AvEPwQ2t8ke6iLWSSXrB94KQxetpq-Clj4GrJStDyTl3eL_5z3cTHSNK4LNeUM3MLklZkpCPpoATsBe8q4rDJpEirYfNmTiEIicBqerQIyraFQ2u2cTlfizNXIbBxguJ4sgr-mgcfBoiFr/w400-h271/Jetpack-compose.png" title="Cara mudah mengganti background color komponen button di Jetpack Compose Kotlin Andorid" width="400" /></a></div><br /><p></p><p>Sebelum mengganti warna background pada tombol kamu coba pastikan dulu versi material design yang kamu gunakan. Cara mengeceknya cukup mudah, coba kamu buka file <i>build.gradle.kts</i>, di baris bawah kamu akan menemukan dependencies apa saja yang kamu gunakan, kemudian cari kata "material", maka kamu akan menemukan berapa versi materialnya, biasanya di tulis seperti ini :<br /></p><p></p><pre><code>implementation("androidx.compose.material3:material3")</code></pre><p></p><p>Saat artikel ini di tulis, versi material terbaru adalah versi 3.</p><p>Kemudian berikut ini adalah cara mengubah background color pada komponen button di Jetpack Compose:</p><p></p><pre><code>colors = ButtonDefaults.buttonColors(containerColor = Color(android.graphics.Color.parseColor("#48A1FF")))</code></pre><p></p><p></p><p>Kode lengkapnya kurang lebih seperti ini :</p><p></p><pre><code>Button(
shape = RoundedCornerShape(5),
onClick = { /* your onclick code here */ },
modifier = Modifier.size(80.dp, 55.dp),
colors = ButtonDefaults.buttonColors(containerColor = Color(android.graphics.Color.parseColor("#48A1FF"))),
) {
Text(text = "Tombol Kang Cahya")
}</code></pre><p></p><p></p><blockquote>Maksud kode di atas adalah, membuat tombol dengan label "Tombol Kang Cahya", dengan bentuk kotak namun melengkung di bagian ujungnya sebesar 5%, ukuran tombolnya mempunyai lebar 50dp dan tinggi 55dp, lalu dengan latar belakang berwarna #48A1FF.</blockquote><p></p><p>Antara Material 3 dengan versi sebelumnya (Material 2) sebenarnya ada sedikit perbedaan. Jika pada Material 3, kamu menggunakan <b><i>containerColor</i></b>, tapi di Material 2 kamu menggunakan <b><i>backgroundColor</i></b>, kurang lebih seperti ini :</p><p>Material 3</p><p></p><pre><code>Button(
shape = RoundedCornerShape(5),
onClick = { /* your onclick code here */ },
modifier = Modifier.size(80.dp, 55.dp),
colors = ButtonDefaults.buttonColors(containerColor = Color(android.graphics.Color.parseColor("#48A1FF"))),
) {
Text(text = "Tombol Kang Cahya")
}</code></pre><p></p><p>Material 2</p><p></p><pre><code>Button(
shape = RoundedCornerShape(5),
onClick = { /* your onclick code here */ },
modifier = Modifier.size(80.dp, 55.dp),
colors = ButtonDefaults.buttonColors(backgroundColor = Color(android.graphics.Color.parseColor("#48A1FF"))),
) {
Text(text = "Tombol Kang Cahya")
}</code></pre><p></p><p><br /></p><p>Referensi : <a href="https://stackoverflow.com/questions/64376333/background-color-on-button-in-jetpack-compose" rel="nofollow" target="_blank">stackoverflow</a></p>Kang cahyahttp://www.blogger.com/profile/11037249477300036688noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-71775186159210751482023-06-18T17:49:00.008+07:002023-12-27T12:45:58.263+07:00Cara generate icon apps dan splashscreen icon di Nativescript 8<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKiE8nR-6Zd7NC2_p1yQf2TLFobK_5LDnaYqZFeeH_5aFrrAmpkOI4MPE1MsuVvnxzc5MSo6-HsJ-GYzLsVQct1dxcAuVIB-meAUtcQIildMvu7NXjemJgmigF0HakrmNN-63U3UK7W3aLq7jfGatj_616s7OChi4sBvyqQo04-Glo2CZ6wlcXzzBU/s400/ns8.jpg" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara generate icon apps dan splashscreen icon di Nativescript 8" border="0" data-original-height="400" data-original-width="400" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKiE8nR-6Zd7NC2_p1yQf2TLFobK_5LDnaYqZFeeH_5aFrrAmpkOI4MPE1MsuVvnxzc5MSo6-HsJ-GYzLsVQct1dxcAuVIB-meAUtcQIildMvu7NXjemJgmigF0HakrmNN-63U3UK7W3aLq7jfGatj_616s7OChi4sBvyqQo04-Glo2CZ6wlcXzzBU/w320-h320/ns8.jpg" title="Cara generate icon apps dan splashscreen icon di Nativescript 8" width="320" /></a></div><p>Saat ini Nativescript sudah sampai di versi 8, banyak improvment yang di lakukan setelah nativescript di serahkan ke nsStudio untuk pengembangan lanjutan-nya. Sayang di nativescipt versi 8 ini, untuk GUI Nativescript SideKick sudah tidak di lanjutkan pengembangannya lagi, jadi di versi 8 kita tidak mempunyai aplikasi GUI yang dapat memudahkan proses developmentnya.</p><p>Contoh sederhana saat kita ingin mengganti sebuah icon apps atau splashscreen icon, saat masih ada GUI Nativescript Sidekick, ketika kita ingin mengganti icon atau splashscreen, kita hanya cukup browse file icon yang akan kita gunakan, namun sekarang sudah tidak bisa begitu lagi. </p><p>Tapi sebagai gantinya, di versi 8 ini sudah ada perintah CLI yang dapat memungkinkan kita menggenerate icon atau splashscreen dengan instan, bahkan fungsi CLI nya sudah mendukung fitur adaptive icon milik android native, lengkapnya bisa baca disini : <a href="https://developer.android.com/guide/practices/ui_guidelines/icon_design_adaptive" rel="nofollow" target="_blank">https://developer.android.com/guide/practices/ui_guidelines/icon_design_adaptive</a>. </p><p>Untuk perintah CLI-nya sebagai berikut :</p><p>CLI untuk generate Icon Apps :</p><pre><code>ns resources generate icons <source image path><br />// Example : ns resources generate icons C:\Users\kangcahya\Picture\icons\myicon.png</code></pre><p>CLI untuk generate Splashscreen :</p><pre><code>ns resources generate splashes <source image path><br />// Example : ns resources generate splashes C:\Users\kangcahya\Picture\icons\myicon.png</code></pre>
<p>CLI untuk generate Splashscreen + background color :</p><pre><code>ns resources generate splashes <source image path> --background <color code><br />// Example : ns resources generate splashes C:\Users\kangcahya\Picture\icons\myicon.png --background #000000</code></pre><p>Semoga artikel ini bermanfaat, terimakasih :)</p><p>Referensi : </p><p></p><ul style="text-align: left;"><li><a href="https://github.com/NativeScript/nativescript-cli/pull/5667" rel="nofollow" target="_blank">https://github.com/NativeScript/nativescript-cli/pull/5667</a></li><li><a href="https://github.com/NativeScript/nativescript-cli/pull/3435" rel="nofollow" target="_blank">https://github.com/NativeScript/nativescript-cli/pull/3435</a><br /></li></ul><p></p>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-17295700327642258532022-12-01T06:46:00.007+07:002023-12-27T12:45:58.222+07:00Cara mengatur apapun di posisi tengah (centering anything) dengan html dan css<p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZWLfyp0LFVQyytoTnCNlCaJuowfs8EunbL3yOYp28FwHtAKFSjbTv-B-W9v7rpvNSbPAqu_2Kn-paHzRNmICOJ6o3_JKLO0PC_0JlhxL_71Y59JCTzUz-ZPOLIbSgmf6qgHqiT5CuD7ZCFZSqM52-K32Os1lLCBPnXEbpPpokUroln2zDcmSw_3-p/s510/centering-anything.png" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mengatur apapun di posisi tengah (centering anything) dengan html dan css" border="0" data-original-height="481" data-original-width="510" height="378" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZWLfyp0LFVQyytoTnCNlCaJuowfs8EunbL3yOYp28FwHtAKFSjbTv-B-W9v7rpvNSbPAqu_2Kn-paHzRNmICOJ6o3_JKLO0PC_0JlhxL_71Y59JCTzUz-ZPOLIbSgmf6qgHqiT5CuD7ZCFZSqM52-K32Os1lLCBPnXEbpPpokUroln2zDcmSw_3-p/w400-h378/centering-anything.png" title="Cara mengatur apapun di posisi tengah (centering anything) dengan html dan css" width="400" /></a></div><br /> <p></p><p>Untuk mengatur posisi tengah, dulu pas pertama kali belajar HTML dan CSS saya hanya tahu poperti yang namanya align, dan penerapan di HTML-nya kurang lebih seperti ini :<br /></p><pre><code><p align="center">Hello World!</p></code></pre><p>Jika pada CSS mungkin seperti ini penulisannya :<br /></p><pre><code>p { text-align: center; }</code></pre><p>Kode diatas biasanya digunakan untuk mengatur posisi teks, seperti teks judul, paragram atau yang lainnya yang berhubungan sama <i>typography</i>, namun tidak menutup kemungkinan juga di gunakan untuk mengatur posisi komponen seperti tombol, gambar atau yang lainnya.</p><p>Namun alangkah baiknya untuk mengatur posisi komponen selain teks, di sarankan untuk tidak menggunakan properti <i>text-align</i>, Kamu bisa menggunakan opsi lain seperti <i>justify-content</i> dan <i>Flex</i> atau <i>place-items</i> dari <i>Grid</i>.</p><p>Sebenarnya tidak ada aturan baku atau larangan yang melarang kita menggunakan properti <i>text-align</i> untuk mengatur komponen lain selain teks.</p><p>Perlu kamu tahu, setiap hal yang di buat pasti memiliki tujuan, kelemahan atau pun kelebihan, seperti halnya properti <i>text-align</i>.</p><p>Ibarat kita mau memotong sebuah tempe dan pilihan alatnya ada pisau dan golok, kira-kira kamu bakal memilih menggunakan apa? pisau atau golok?; Pada dasarnya keduanya bisa digunakan untuk memotong tempe, namun alangkah tidak efektifnya untuk memotong sebuah tempe kita sampai harus menggunakan golok.</p><p>Kira-kira sampai sini sudah bisa memahaminya? Jika sudah paham mari kita lanjut.</p><p>Pada kasus ini, jika kita ingin mengatur posisi tengah yang mana itu bukanlah sebuah teks, melainkan sebuah komponen seperti tombol, table atau yang lainnya, disarankan menggunakan opsi lain, seperti <i>justify-content</i> dari <i>flex</i> atau <i>place-items</i> dari <i>grid</i>. Untuk contoh penggunaannya kurang lebih seperti ini :</p><p class="codepen" data-default-tab="html,result" data-height="300" data-slug-hash="JjZaxOw" data-user="cahyadyazin" style="align-items: center; border: 2px solid; box-sizing: border-box; display: flex; height: 300px; justify-content: center; margin: 1em 0px; padding: 1em;">
<span>See the Pen <a href="https://codepen.io/cahyadyazin/pen/JjZaxOw">
Simple code for Centering anything with CSS (FLEX & GRID)</a> by Kang cahya (<a href="https://codepen.io/cahyadyazin">@cahyadyazin</a>)
on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://cpwebassets.codepen.io/assets/embed/ei.js"></script><p>Mungkin cukup sekian dulu untuk pembahasan kali ini, untuk kurangnya saya ucapkan mohon maaf dan untuk lebihnya silahkan kamu ambil saja, sekita dan terimakasih :)</p><p><br /></p>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-47937056572861068002022-11-26T14:34:00.003+07:002023-12-27T12:45:58.243+07:00Cara mengatasi pesan Error pending update of snap-store snap di ubuntu linux<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgja8CA9v0wkapK9qckkASV4Juu3a39X-ErTmCExFFScG1uQGTsLnj2p1RSKTWEcUr1XeVQR8x8hEG_8Wv1ViSHslXpARPYWdLTNRCFAhSstmclYCau0tJ1a7Do3QC7jG3iZ0KB1DK9eyZjCyl7ImpF1-erVvHvHTxLrONSZnrP2k0suYZAjgMMYYAO/s828/Screenshot%20from%202022-11-26%2012-55-44.png" style="margin-left: 1em; margin-right: 1em;"><img alt="Fixing notif error pending update of snap-store snap close the app to avoid disruptions on ubuntu linux" border="0" data-original-height="454" data-original-width="828" height="350" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgja8CA9v0wkapK9qckkASV4Juu3a39X-ErTmCExFFScG1uQGTsLnj2p1RSKTWEcUr1XeVQR8x8hEG_8Wv1ViSHslXpARPYWdLTNRCFAhSstmclYCau0tJ1a7Do3QC7jG3iZ0KB1DK9eyZjCyl7ImpF1-erVvHvHTxLrONSZnrP2k0suYZAjgMMYYAO/w640-h350/Screenshot%20from%202022-11-26%2012-55-44.png" title="Fixing notif error pending update of snap-store snap close the app to avoid disruptions on ubuntu linux" width="640" /></a></div>
<br />
<p></p>
<p>Untuk kamu pengguna Ubuntu Linux pernahkah kamu medapati pesan notifikasi seperti <i>pending update of snap-store snap</i>? Mungkin awalnya kamu merasa biasa saja ketika mendapati pesan seperti itu. Tapi lama kelamaan malah jadi tambah risi karena pesan notif tersebut jadi sering muncul tiap hari, tepatnya saat kita ingin melakukan update aplikasi via Ubuntu Software.</p>
<p>Pesan notif ini sering muncul semenjak ubuntu menyematkan aplikasi Snap-store secara default pada paket Instalasinya, yaitu sekitar ubuntu versi 20 atau 21-an kira-kira. </p>
<p>Singkatnya snap-store adalah aplikasi Thrid-party untuk mengintal aplikasi-aplikasi di ubuntu, namun seiring berjalannya waktu Snap-store sudah bukan lagi jadi aplikasi Thrid-party, karena secara resmi ubuntu menyematkannya secara default ketika kita menginstall OS Ubuntu pada laptop/PC.</p>
<p>Pertanyaannya lalu bagaimana cara mengatasi pesan notif tersebut agar tidak muncul lagi?</p>
<p>Sebelum menjawab pertanyaan tersebut, saya ingin memberitahu penyebab kenapa pesan notif itu sering muncul. Menurut analisa saya, hal itu di sebabkan karena gagal update. Singkatnya, saat Snap-store akan kita update posisi Snap-store nya itu sedang dalam keadaan Running (berjalan), makanya terjadi gagal update. </p>
<p>Secara logika jika kita ingin melakukan update, agar tidak terjadi gagal update maka Snap-store nya harus kita matikan dulu.</p>
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhH40HWHQOVNFlwBLPrYNXvZLW5dd9SewQN7a_9srSw8OYWHZ-jKHvyUVsGzfX5K9oo1TVkOPoDfNhHyKM81FHOLcgC2mhi0FMUT2i0l_dQQdBMMwvtj2Um7HddKTd07C-d3QlAykn1ofMkcweR4mvcGq3PQRXEGtiVBDs9ERvnzEs7E65-ytwyZeb6/s770/Screenshot%20from%202022-11-26%2012-51-49.png" style="margin-left: 1em; margin-right: 1em;"><img alt="Fixing notif error pending update of snap-store snap close the app to avoid disruptions on ubuntu linux" border="0" data-original-height="524" data-original-width="770" height="435" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhH40HWHQOVNFlwBLPrYNXvZLW5dd9SewQN7a_9srSw8OYWHZ-jKHvyUVsGzfX5K9oo1TVkOPoDfNhHyKM81FHOLcgC2mhi0FMUT2i0l_dQQdBMMwvtj2Um7HddKTd07C-d3QlAykn1ofMkcweR4mvcGq3PQRXEGtiVBDs9ERvnzEs7E65-ytwyZeb6/w640-h435/Screenshot%20from%202022-11-26%2012-51-49.png" title="Fixing notif error pending update of snap-store snap close the app to avoid disruptions on ubuntu linux" width="640" /></a></div>
<p>Untuk melakukan hal tersebut, kamu bisa melakukan langkah-langkah berikut :</p>
<p><b><span style="font-size: medium;">Pertama</span></b><br /></p>
<p>Lakukan cek update terlebih dahulu dengan mengetikan perintah ini pada terminal :<br /></p>
<pre><code>sudo snap refresh</code></pre>
<p></p>
<p><b><span style="font-size: medium;">Kedua</span></b></p>
<p>Ketikan perintah berikut ini untuk mengecek list update :<br /></p>
<pre><code>snap refresh --list</code></pre>
<p></p>
<p><b><span style="font-size: medium;">Ketiga</span></b></p>
<p>Ketikan perintah berikut ini untuk mematikan sementara aplikasi Snap-store nya :<br /><span face="Roboto, Arial, sans-serif" style="background-color: white; color: #0f0f0f; font-size: 14px; white-space: pre-wrap;"></span></p>
<pre><code>sudo killall snap-store</code></pre>
<p></p>
<p><b><span style="font-size: medium;">Keempat</span></b></p>
<p>Ketikan perintah berikut ini untuk melakukan mengupdate aplikasi Snap-store nya :</p>
<pre><code>sudo snap refresh</code></pre>
<p><b><span style="font-size: medium;">Kelima</span></b></p>
<p>Langkah terakhir ketikan perintah berikut ini untuk mengecek kembali apakah masih ada update atau tidak :</p>
<pre><code>sudo snap refresh</code></pre>
<p></p>
<p>Nah itu tadi langkah-langkah untuk mengatasi pesan notif <i>pending update of snap-store snap</i>, seharusnya seletah kamu mengikuti langkah di atas pesan notif tersebut tidak akan muncul lagi.</p>
<p>Mungkin cukup sekitan untuk pembahasan artikel kali ini, semoga bermanfaat.</p>
<p></p>
<p>Terimakasih :)</p>
Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-52523818810242491852022-02-18T11:32:00.001+07:002023-12-27T12:45:58.247+07:00Cara mudah menstop atau memberhentikan port yang terpakai di windows<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEgRFoBitW2wOnw00GzFSBDn8Ww-WqX0pPU7W9sRRwmVdO8LXTUMzE7kKIDlxw2H70Mzt3qOvcORO6YEaKHCKJFu85LXzCTik2-YuHz8YIss0aYFEHNYNORsnCoGQ-VEyFqhGUUt7UzBSLtdQyM3LHT5HRqYY05TGOmq0CIZOw8Oy983tkU5lYr59GtB=s1113" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mudah menstop atau memberhentikan port yang terpakai di windows" border="0" data-original-height="622" data-original-width="1113" height="224" src="https://blogger.googleusercontent.com/img/a/AVvXsEgRFoBitW2wOnw00GzFSBDn8Ww-WqX0pPU7W9sRRwmVdO8LXTUMzE7kKIDlxw2H70Mzt3qOvcORO6YEaKHCKJFu85LXzCTik2-YuHz8YIss0aYFEHNYNORsnCoGQ-VEyFqhGUUt7UzBSLtdQyM3LHT5HRqYY05TGOmq0CIZOw8Oy983tkU5lYr59GtB=w400-h224" title="Cara mudah menstop atau memberhentikan port yang terpakai di windows" width="400" /></a></div><br /><p>Pada pembahasan kali ini saya ingin membahas topik ringan dan sederhana, yaitu cara men-stop atau memberhentikan port yang terpakai di windows. Kasus ini saya alami ketika saat ingin menjalankan projek Angular di port 3000 namun ternyata Port yang ingin saya gunakan ternyata sudah terpakai atau sudah di gunakan oleh program lain.</p><p>Untuk masalah ini cara mengatasinya cukuplah mudah;</p><p><b>Langkah Pertama</b><br />Buka dahulu program Command Line (CMD) windowsnya.</p><p><b>Langkah Kedua</b><br />Jalankan perintah berikut di CMD :<br /></p>
<p></p><pre><code>netstat -ano | findstr :<PORT>
</code></pre><p></p><p>Ubah bagian <PORT> sesuai dengan angka port yang ingin kamu cari, pada kasus ini saya ingin mencari Port 3000. Jika sudah di Enter saja.</p><p><b>Langkah Ketiga</b><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhjE2dKvc_8NVMWm5SsVPaF_fmvK6lqdSZRHRPi3vla2tCZ2HIc7G3r_LGpvsjAHKkzOHI2N4PKisRR7E9gklTV5tk7IPFJeIhDcOmx_hIgnXaoTk3pNfrB9rWaPLIxBLyvU-iuJhUYQ6HjFlfECLdpIEb1O12rrlZsDRoG7GHnXFvAv-wXb_jqJDql=s698" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img alt="Cara mudah menstop atau memberhentikan port yang terpakai di windows" border="0" data-original-height="106" data-original-width="698" height="61" src="https://blogger.googleusercontent.com/img/a/AVvXsEhjE2dKvc_8NVMWm5SsVPaF_fmvK6lqdSZRHRPi3vla2tCZ2HIc7G3r_LGpvsjAHKkzOHI2N4PKisRR7E9gklTV5tk7IPFJeIhDcOmx_hIgnXaoTk3pNfrB9rWaPLIxBLyvU-iuJhUYQ6HjFlfECLdpIEb1O12rrlZsDRoG7GHnXFvAv-wXb_jqJDql=w400-h61" title="Cara mudah menstop atau memberhentikan port yang terpakai di windows" width="400" /></a></div><br /><p><br /></p><p><br /></p><p>Perhatikan gambar di atas, itu adalah hasil dari Langkah Kedua. Yang di tandai kotak merah adalah PID dari Port 3000, dilahkah ketiga ini kita akan melakukan kill pada Port 3000 dengan menggunakan PID.</p><p>Ketikan perintah di bawah ini untuk menghentikan Port tersebut :</p><p></p><pre><code>taskkill /PID <PID> /F</code></pre><p></p><p>Ubah <PID> sesuai PID yang kamu ingin Kill Port-nya. Jika berhasil maka akan tampil pesan <i>"SUCCESS: The process with PID <YourPID> has been terminated."</i>, seperti gambah di bawah ini :</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhZH9Ud66_XtLVSJ9g3x74SvpUx6EDy5X7x0OJFNzfwdnknl16kP9tSaMYMvXGUv3c1oN1kYOY0Chko62VxSky_C5_o_tfr8j9dZHZgb19gNLQQs3ITLR-mvh05qHK-iDHm7SUiD-SHZMwqJF-6O7ZTMRtwBHZazH3x1y1azYY3WmQNjs5bLybDKCK0=s529" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img alt="Cara mudah menstop atau memberhentikan port yang terpakai di windows" border="0" data-original-height="70" data-original-width="529" height="53" src="https://blogger.googleusercontent.com/img/a/AVvXsEhZH9Ud66_XtLVSJ9g3x74SvpUx6EDy5X7x0OJFNzfwdnknl16kP9tSaMYMvXGUv3c1oN1kYOY0Chko62VxSky_C5_o_tfr8j9dZHZgb19gNLQQs3ITLR-mvh05qHK-iDHm7SUiD-SHZMwqJF-6O7ZTMRtwBHZazH3x1y1azYY3WmQNjs5bLybDKCK0=w400-h53" title="Cara mudah menstop atau memberhentikan port yang terpakai di windows" width="400" /></a></div><br /><p><br /></p><p><br /></p><p></p><blockquote>Catatan: Jika cara ini tidak berhasil, coba buka CMD kamu dengan mode Administrator, kemudian ulangi caranya dari langkah pertama.</blockquote><p></p><p>Mungkin cukup sekian dulu untuk pembahasan kali ini, semoga tulisan ini bermanfaat. Bisa tanyakan di kolom komentar jika ada yang kurang di pahami, di usahakan saya akan balas pertanyaan di kolom komentar sesegera mungkin.</p>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-28910422521902728532021-03-30T19:52:00.004+07:002023-12-27T12:45:58.230+07:00Cara mengecek koneksi internet di Nativescript (NS Core Javascript)<div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-PEujS1wAtQQ/YGMe-sS_1pI/AAAAAAAALdo/37sqvD8HltsGHIDBOSIvZq5aou_e-n6IgCLcBGAsYHQ/s600/connectivity.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara mengecek koneksi internet di Nativescript (NS Core Javascript)" border="0" data-original-height="360" data-original-width="600" height="384" src="https://1.bp.blogspot.com/-PEujS1wAtQQ/YGMe-sS_1pI/AAAAAAAALdo/37sqvD8HltsGHIDBOSIvZq5aou_e-n6IgCLcBGAsYHQ/w640-h384/connectivity.jpg" title="Cara mengecek koneksi internet di Nativescript (NS Core Javascript)" width="640" /></a></div><p>Ini fungsi yang sederhana namun dapat di butuhkan sewaktu-waktu, cara mengecek koneksi internet di nativescript. Fungsi ini dapat kamu gunakan untuk melakukan validasi ketika device mobile tidak terkoneksi ke jaringan internet.<br /></p><p>Jika pada Nativenya, untuk Android mungkin kamu merasa tidak asing dengan modul <i>CONNECTIVITY_SERVICE</i> atau untuk di IOS nama modulnya <i>SCNetworkReachability</i>. Dan di Nativescript kamu dapat menggunakan modul bawaan dari Nativescript, nama modulnya adalah <i>Connetivity</i>.</p><p></p><blockquote>Requirement :<br />- Nativescript 6 atau lebih baru<br />- Javascript</blockquote><p></p><p>Disini basis kode yang saya gunakan ada lah Javascript, bukan typescript, mungkin jika kamu menggunakan Typescript, kamu dapat mengkonversinya manual dari Javascript ke Typescript. Mungkin langsung ke pembahasannya saja, berikut cara menggunakannnya</p><p>PERTAMA<br />Import terlebih dahulu modulnya, kodenya sebagai berikut :<br /></p><pre><code>const connectivityModule = require("tns-core-modules/connectivity");</code></pre><p>KEDUA<br />Tambahkan kode berikut :<br /></p><pre><code>const type = connectivityModule.getConnectionType();
switch (type) {
case connectivityModule.connectionType.none:
console.log("No connection");
break;
case connectivityModule.connectionType.wifi:
console.log("WiFi connection");
break;
case connectivityModule.connectionType.mobile:
console.log("Mobile connection");
break;
case connectivityModule.connectionType.ethernet:
console.log("Ethernet connection");
break;
case connectivityModule.connectionType.bluetooth:
console.log("Bluetooth connection");
break;
default:
break;
}</code></pre><p></p><p>Cakupan koneksi disini sebenarnya bukan hanya Internet seperti Wifi, Mobile dan Tethering dari Wifi mobile, tapi juga ada bluetooth. Saya rasa kode di atas sangat mudah untuk di baca untuk kamu cerna sendiri tanpa perlu paparan penjelasan lebih dari saya.</p><p>Semoga dapat di pahami, mungkin cukup sampai disini dulu untuk tulisan kali ini, terima kasih.</p><p><br /></p>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-25929262334994017262021-03-16T09:27:00.003+07:002023-12-27T12:45:58.228+07:00Cara membuat direktori di Android Kotlin (Android 10 atau lebih baru)<p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-15GyTuX8aTY/YFAXevRiQgI/AAAAAAAALb4/XBNn8Ub0VBYA8ybaNwasdl8xMlprjaFqQCLcBGAsYHQ/s761/ScreenShot_20210316092616.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara membuat direktori di Android Kotlin (Android 10 atau lebih baru)" border="0" data-original-height="505" data-original-width="761" height="265" src="https://1.bp.blogspot.com/-15GyTuX8aTY/YFAXevRiQgI/AAAAAAAALb4/XBNn8Ub0VBYA8ybaNwasdl8xMlprjaFqQCLcBGAsYHQ/w400-h265/ScreenShot_20210316092616.png" title="Cara membuat direktori di Android Kotlin (Android 10 atau lebih baru)" width="400" /></a></div><br /><p></p><p>Ada sedikit kasus yang mungkin dapat bermanfaat untuk kamu. Setelah setahun tidak memegang Android Kotlin, ada beberapa hal yang baru saya tahu. Kemarin ada kasus saat saya menulis kode kotlin untuk membuat direktori baru. Kode ini berjalan mulus ketika di coba di jalankan di Perangkat Android Q (atau Android 10) kebawah. Dan ketika di tes pada perangkat Android 10 ke atas malah error, sebenarnya bukan error sih, cuma kodenya tidak berjalan dengan semestinya.</p><p>Ada yang pernah mengalami kasus seperti ini? Untuk kamu yang mengalami kasus semacam ini, dan masih belum menemukan solusinya, disini saya akan coba bagikan kepada kamu cara memecahkan kasus yang satu ini.</p><p>Langkah Pertama</p><p>Tambahkan kode dibawah ini pada <i>AndroidManifest.xml</i> di dalam Tag <i><application></i></p><p></p><pre><code>android:requestLegacyExternalStorage="true"</code></pre><p></p><p>Langkah Kedua<br /></p><p>Masih pada file AndroidManifest.xml, tambahkan pengaturan permission WRITE dan READ Storage</p><p></p><pre><code><uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /></code></pre><p></p><p>Langkah Ketiga</p><p>Buat fungsi untuk mengecek permissionnya (kotlin), kurang lebih seperti ini</p><p></p><pre><code>private fun checkPermission() {
if (ContextCompat.checkSelfPermission(
this,
Manifest.permission.WRITE_EXTERNAL_STORAGE
)
!= PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission(
this,
Manifest.permission.READ_EXTERNAL_STORAGE
)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(
this,
arrayOf(
Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.READ_EXTERNAL_STORAGE
),
100
)
}
}</code></pre><p></p><p>Langkah Keempat</p><p>Buat fungsi untuk memebuat direktori baru di android, kode dibawah ini akan mengecek dulu apakah direktorinya sudah ada atau belum, jika belum dibuat maka akan dibuatkan direktorinya, tetapi jika direktori tidak ada, maka akan dibuatkan direktori baru.</p><p></p><pre><code>private fun checkDir(){
val a = File(Environment.getExternalStorageDirectory().path, "/FOLDER-BARU")
if(!a.exists() && !a.isDirectory()){
a.mkdirs()
}
}</code></pre><p></p><p>Pada langkah ketiga dan keempat kamu dapat sesuaikan sendiri sesuai yang kamu mau. Mungkin saya cukupakan sampai disini dulu, semoga tulisan ini dapat bermanfaat untuk kamu.</p><p>Bisa juga tuliskan di kolom komentar untuk diskusi lebih lanjut, saya akan usahakan secepatnya membalas komentar kamu.</p><p>Terima kasih :)</p><p><br /></p>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-88971177395311687802021-03-01T19:47:00.001+07:002023-12-27T12:45:58.272+07:00Cara menampilkan informasi Speed Internet di taskbar Windows 10<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-b1D6yp6292A/YDzbZ3tYIZI/AAAAAAAALZc/a_44ILJWEYgR4hTVTGpA81q7OC4c-T4VACLcBGAsYHQ/s709/ScreenShot_20210301191631.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" border="0" data-original-height="451" data-original-width="709" height="408" src="https://1.bp.blogspot.com/-b1D6yp6292A/YDzbZ3tYIZI/AAAAAAAALZc/a_44ILJWEYgR4hTVTGpA81q7OC4c-T4VACLcBGAsYHQ/w640-h408/ScreenShot_20210301191631.png" title="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" width="640" /></a></div><br /><p></p><p>Kali ini saya ingin berbagi sedikit tutorial seputar <i>Cara menampilkan informasi Speed Internet di Taskbar Windows 10</i>. Kurang lebih tampilannya seperti yang ada pada gambar di atas yang di kotakin warna merah.</p><p>Untuk melakukan itu caranya cukup mudah, kamu hanya perlu memasang software pada windows 10 kamu, nama softwarenya adalah <a href="https://www.softpedia.com/get/Network-Tools/Bandwidth-Tools/NetSpeedMonitor.shtml" rel="nofollow" target="_blank">Net Speed Monitor</a> . Kamu bisa mengunduh softwarenya disini : <a href="https://www.softpedia.com/get/Network-Tools/Bandwidth-Tools/NetSpeedMonitor.shtml" rel="nofollow" target="_blank">[ DOWNLOAD NET SPEED MONITOR ]</a> . Jika sudah di download langsung coba install saja.</p><p>Pada saat melakukan instalasi pasti kamu akan mendapat error seperti ini </p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-JKivWjcHQrQ/YDzdTvFOy7I/AAAAAAAALZk/aKaTa3rPynwG1u9yAonyP_A1hT0iweJAACLcBGAsYHQ/s700/ezgif.com-gif-maker.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" border="0" data-original-height="541" data-original-width="700" height="309" src="https://1.bp.blogspot.com/-JKivWjcHQrQ/YDzdTvFOy7I/AAAAAAAALZk/aKaTa3rPynwG1u9yAonyP_A1hT0iweJAACLcBGAsYHQ/w400-h309/ezgif.com-gif-maker.jpg" title="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" width="400" /></a></div><p>Masalah tersebut adalah soal kompatibilitas, software ini tidak kompatible di windows 10, tapi kamu jangan kwatir, windows 10 memiliki kemampuan untuk menyesuaikan hal tersebut, dengan sedikit merubah pengaturan pada file masalah tersebut seketika akan beres, caranya :</p><p>Pertama, klik kanan pada file installer software tersebut, lalu pilih Properties.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-iGNBl8vgf3E/YDzedegRzOI/AAAAAAAALZs/8CSotIzUhosug5dPuv_iteac8-ot8zOMgCLcBGAsYHQ/s699/ScreenShot_20210301193009.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" border="0" data-original-height="481" data-original-width="699" height="275" src="https://1.bp.blogspot.com/-iGNBl8vgf3E/YDzedegRzOI/AAAAAAAALZs/8CSotIzUhosug5dPuv_iteac8-ot8zOMgCLcBGAsYHQ/w400-h275/ScreenShot_20210301193009.png" title="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" width="400" /></a></div><br /><p>Kedua, klik pada tab Compatibillity, lalu checklist pada bagian "Run this program in compatibillity mode for"</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-25iDKPZv34w/YDzet3RuUTI/AAAAAAAALZ0/5L6QMgl5McUFvn5GzY4FCwJvFKpURsvUACLcBGAsYHQ/s696/ScreenShot_20210301193117.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" border="0" data-original-height="423" data-original-width="696" height="243" src="https://1.bp.blogspot.com/-25iDKPZv34w/YDzet3RuUTI/AAAAAAAALZ0/5L6QMgl5McUFvn5GzY4FCwJvFKpURsvUACLcBGAsYHQ/w400-h243/ScreenShot_20210301193117.png" title="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" width="400" /></a></div><div><br /></div>Ketiga, jika sudah, langsung apply saja, trus klik OK. kemudian sekarang coba install lagi softwarenya.<div><br /></div><div>Cara install-nya tinggal nect, next finish saja, tidak terlalu sulit. Jika sudah selesai di install, saat kamu klik kanan pada Taskbar lalu pilih Toolbar, semudian klik pada NetSpeedMonitor.</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-VK5CtDcBBUk/YDzfwFfnREI/AAAAAAAALZ8/l9zkPPkly9cTPWASQ4R8xfKMDKM1diTTwCLcBGAsYHQ/s679/ScreenShot_20210301193520.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" border="0" data-original-height="451" data-original-width="679" height="266" src="https://1.bp.blogspot.com/-VK5CtDcBBUk/YDzfwFfnREI/AAAAAAAALZ8/l9zkPPkly9cTPWASQ4R8xfKMDKM1diTTwCLcBGAsYHQ/w400-h266/ScreenShot_20210301193520.png" title="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" width="400" /></a></div><br /><div>Dan sekarang harusnya Infomasi Speed Internet-nya sudah muncul.</div><div><br /></div><div><br /></div><div><b>BAGAIMANA JIKA INFORMASI SPEED INTERNETNYA BELUM MUNCUL?</b><br /><p>Untuk memperbaiki hal ini, kamu hanya perlu melakukan sedikit konfigurasi, caranya, klik kanan lalu pilih Configuration</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-YPKCbRv1D4k/YDzgcfJwsRI/AAAAAAAALaE/J-xhHgKe5eEAa5VWUxc_yagpkgTJddoAQCLcBGAsYHQ/s295/ScreenShot_20210301193844.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" border="0" data-original-height="257" data-original-width="295" height="348" src="https://1.bp.blogspot.com/-YPKCbRv1D4k/YDzgcfJwsRI/AAAAAAAALaE/J-xhHgKe5eEAa5VWUxc_yagpkgTJddoAQCLcBGAsYHQ/w400-h348/ScreenShot_20210301193844.png" title="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" width="400" /></a></div><br /><p>Pada bagian Network interface silahkan pilih sesuai Driver Network yang terintal di Windows 10 kamu, misal driver networknya pakai Qualcomm berarti pilih Qualcomm, jika pakainya Realtek berarti pilih Realtek. Di sesuaikan saja sendiri.</p><p>Lalu pada bagian bitrate, kamu juga bisa atur satuannya sesuai keinginan kamu, entah kB/s atau Kbit/s atau mb/s dan lainnya, silahkan pilih sesuai kemauan kamu.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-3-4Fr_NSEeM/YDzgyFjOjII/AAAAAAAALaM/wZulRQfprk888dTlMHkVbaAyirrDB748gCLcBGAsYHQ/s503/ScreenShot_20210301193956.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" border="0" data-original-height="502" data-original-width="503" height="399" src="https://1.bp.blogspot.com/-3-4Fr_NSEeM/YDzgyFjOjII/AAAAAAAALaM/wZulRQfprk888dTlMHkVbaAyirrDB748gCLcBGAsYHQ/w400-h399/ScreenShot_20210301193956.png" title="Net Speed Internet - Cara menampilkan informasi Speed Internet di taskbar Windows 10" width="400" /></a></div><br /><p>Mungkin cukup sekian dulu, semoga bermanfaat untuk kamu, terima kasih :)</p><p><br /></p><p><br /></p><p><br /></p><p><br /></p></div>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-62180995559539303552021-02-23T07:26:00.001+07:002023-12-27T12:45:58.255+07:00Memperbaiki peringatan isu Your .htaccess file does not contain all recommended security headers di wordpress<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-aGGqX0x86Yc/YDRIzeVWiJI/AAAAAAAALYU/mVBwRTHk234o2-noMyasqRjQ22Ryhu3oQCLcBGAsYHQ/s833/ScreenShot_20210223071258.png" style="margin-left: 1em; margin-right: 1em;"><img alt="Memperbaiki peringatan isu Your .htaccess file does not contain all recommended security headers di wordpress" border="0" data-original-height="342" data-original-width="833" height="262" src="https://1.bp.blogspot.com/-aGGqX0x86Yc/YDRIzeVWiJI/AAAAAAAALYU/mVBwRTHk234o2-noMyasqRjQ22Ryhu3oQCLcBGAsYHQ/w640-h262/ScreenShot_20210223071258.png" title="Memperbaiki peringatan isu Your .htaccess file does not contain all recommended security headers di wordpress" width="640" /></a></div><p></p><p>Pada pembahasan ini saya ingin membahas cara memperbaiki isu yang terdeteksi oleh Wordpress Site Healt. Pesannya kurang lebih seperti ini :</p><pre><code>
Your .htaccess file does not contain all recommended security headers
HTTP Strict Transport Security
Content Security Policy: Upgrade Insecure Requests
X-XSS protection
X-Content Type Options
Referrer-Policy
X-Frame-Options
Expect-CT</code></pre><p></p>Isu tersebut berkaitan dengan SSL yang mana ada beberapa keamanan yang masih terdapat celah dimana keamanan tersebut harus kita tutup dengan cara mengatur beberapa Header pada file .htaccess.<div><br /></div><div>Kamu bisa salin saja Header dibawah ini pada file .htaccess kamu di wodpress, letakan saja di bagian baris paling atas atau paling bawah.</div>
<div><pre><code>
# BEGIN Fix security headers
Header always set Strict-Transport-Security: "max-age=31536000" env=HTTPS
Header always set X-Content-Type-Options "nosniff"
Header always set X-XSS-Protection "1; mode=block"
Header always set Expect-CT "max-age=7776000, enforce"
Header always set Referrer-Policy: "no-referrer-when-downgrade"
Header set Content-Security-Policy: "upgrade-insecure-requests"
# END Fix security headers
</code></pre></div>Kurang lebih seperti itu, semoga dapat membantu :)Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-23683145265050031762020-12-17T15:38:00.000+07:002023-12-27T12:45:58.227+07:00Cara memperbaharui password MYSQL di ubuntu server akibat lupa dengan menggunakan terminal<div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-SEx66d0cDA8/X9sYtzsAafI/AAAAAAAALUs/gBWxwDZ9vzIP4NlPNNSebh84CL50A3lBwCLcBGAsYHQ/s1042/ScreenShot_20201217153636.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Cara memperbaharui password MYSQL di ubuntu server akibat lupa dengan menggunakan terminal" border="0" data-original-height="801" data-original-width="1042" height="308" src="https://1.bp.blogspot.com/-SEx66d0cDA8/X9sYtzsAafI/AAAAAAAALUs/gBWxwDZ9vzIP4NlPNNSebh84CL50A3lBwCLcBGAsYHQ/w400-h308/ScreenShot_20201217153636.png" title="Cara memperbaharui password MYSQL di ubuntu server akibat lupa dengan menggunakan terminal" width="400" /></a></div><p>Saya ingin berbagi sedikit pengalaman kepada kamu soal cara mengubah password MYSQL, lantara waktu itu saya tiba-tiba lupa passwordnya, bahkan sepat beberapa kalo akibat update, si pasword MYSQL tiba-tiba berubah sendiri, sehingga saya susah buat masuk ke Databasenya. </p>
<p>Nah topik yang saya akan bahas adalah cara menyelesaikan masalah di atas, awalnya saya pun merasa bingung bagaimana caranya masuk ke MYSQL sedangkan saya sendiri lupa paswordnya, rada sedih memang, karna yang buat saya sedih bukan hanya itu, ada juga koneksi internet yang cukup lamban sehingga prosesnya jadi tambah lama, menyebalkan.</p>
<p>Sebenarnya cara ini bisa dipakai di luar Ubuntu Server, cuma memang kebetulan saja pas waktu itu saya mengalaminya di ubuntu server. Mungkin cara ini sama dan bisa di terapkan pada OS yang berbasiskan Ubuntu atau Debian. Oke mari kita langsung saja ke pembahsannya.</p>
<p><b>Langkah pertama</b>, edit file my.cnf dahulu, jalankan perintah dibawah</p>
<p></p>
<pre> <code>sudo vim /etc/mysql/my.cnf</code>
</pre>
<p><b>Langkah kedua</b>, tambahkan kode dibawah ini di baris paling bawah, terus simpan. Kode dibawah ini berfungsi untuk melakukan By Pass saat kita akan masuk ke MYSQL. Lalu setelah kita bisa masuk nanti, kita akan melakukan update pada tabel user dan memperbaharui password user root-nya si MYSQL.</p>
<pre> <code>
[mysqld]
skip-grant-tables
</code>
</pre>
<p><b>Langkah ketiga</b>, restart duu mysqlnya, bisa jalankan perintah dibawah</p>
<pre> <code>sudo service mysql restart</code>
</pre>
<p>Pada tahap ini saya mendapati sebuah error, yang mana si MYSQL-nya tidak dapat di restart, kurang lebih pesan errornya seperti ini :</p>
<pre> <code>mysql.serviceJob for mysql.service failed because the control process exited with error code.</code>
</pre>
<p>Cara memperbaiki error ini cukup mudah, kamu cukup jalankan saja perintah dibawah ini satu per satu :</p>
<pre> <code>/etc/init.d/mysql stop</code>
</pre>
<pre> <code>service mysql stop</code>
</pre>
<pre> <code>killall -KILL mysql mysqld_safe mysqld</code>
</pre>
<pre> <code>/etc/init.d/mysql start</code>
</pre>
<pre> <code>service mysql start</code>
</pre>
<p><b>Langkah keempat</b>, kita akan mulai masuk ke MYSQL nya, jalankan perintah dibawah:</p>
<pre> <code>mysql -u root</code>
</pre>
<p><b>Langkah kelima</b>, pilih database mysql, dengan perintah berikut:</p>
<pre> <code>use mysql</code>
</pre>
<p><b>Langkah keenam</b>, jalankan perintah berikut, lalu lihat di sana, untuk menentukan apakah kolom password berisi password atau authentication_string:</p>
<pre> <code>select * from mysql.user where user = 'root';</code>
</pre>
<p>Jika iya, <b>langkah ketujuh</b>, kita akan mengupdate password user rootnya, jalankan perintah dibawah ini, tapi sebelum itu, ganti tulisan <i>"your_new_password"</i> menjadi password yang kamu inginkan.</p>
<pre> <code>UPDATE mysql.user set *password_field from above* = PASSWORD('your_new_password') where user = 'root' and host = 'localhost';</code>
</pre>
<p><b>Langkah kedelapan</b>, jalankan perintah ini, jika sudah langsung exit aja jadi mysql dengan menjalankan perintah exit.</p>
<pre> <code>FLUSH PRIVILEGES;</code>
</pre>
<pre> <code>exit</code>
</pre>
<p><b>Langkah kesembilan</b>, hapus kembali kode By Pass yang awal kamu tambahkan saat di Langkah ke 2, jalankan perintah ini untuk membuka filenya, jika sudah langsung simpan lagi saja.</p>
<pre> <code>sudo vim /etc/mysql/my.cnf</code>
</pre>
<p>Jika sudah, <b>langkah terakhir</b> restart MYSQL kamu dengan mengetikan perintah berikut:</p>
<pre> <code>sudo service mysql restart</code>
</pre>
<p>Oke mungkin pembahasan ini saya cukupkan sampai disini dahulu, semoga kamu paham dengan apa yang saya paparkan, jikalau memang masih belum paham bisa tanyakan dikolom komentar, terima kasih :)</p><p><br /></p>
Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-79723281063668422002020-10-19T21:25:00.006+07:002023-12-27T12:45:58.267+07:00Nativescript Sidekick tidak bisa di buka karena ada error Cannot find module temp<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-V6165E3hoK4/X42dPRrhENI/AAAAAAAALQ0/G_t4tzaZCYkXqfpyvLGgPWifBzfpX7uUgCLcBGAsYHQ/s380/ScreenShot_20201019210224.png" style="margin-left: 1em; margin-right: 1em;"><img alt="Nativescript Sidekick tidak bisa di buka karena ada error Cannot find module temp" border="0" data-original-height="280" data-original-width="380" height="295" src="https://1.bp.blogspot.com/-V6165E3hoK4/X42dPRrhENI/AAAAAAAALQ0/G_t4tzaZCYkXqfpyvLGgPWifBzfpX7uUgCLcBGAsYHQ/w400-h295/ScreenShot_20201019210224.png" title="Nativescript Sidekick tidak bisa di buka karena ada error Cannot find module temp" width="400" /></a></div><br /><p></p><p style="text-align: justify;">Sebagai pengeemar Nativescript saya pun dibuat kesal karena aplikasi Nativescript Sidekick tidak bisa dibuka, selalu muncul error "Cannot find module temp bla bla bla". Saya pikir Sidekick sudah mati alias discontinue. Tapi nyatanya tidak, Nativescript Sidekick masih hidup dan terus diperbaharui, mengacu pada halaman wiki ini (<a href="https://github.com/ProgressNS/sidekick-docs/wiki/Release-Notes">https://github.com/ProgressNS/sidekick-docs/wiki/Release-Notes</a>), Nativescript Sidekick terakhir diperbaharui pada 3 juni 2020 yang release dengan versi 1.20.1.</p><p style="text-align: justify;">Untuk kamu yang belum tahu, Nativescript Sidekick adalah sebuah aplikasi GUI dari nativescript, yang mana fungsinya sama seperti Nativescript CLI. Bedanya Sidekick ini di kemas dalam bentuk tampilan GUI yang memudahkan pengguna dalam menggunakannya, cukup klik-klik beres.</p><p style="text-align: justify;">Kembali ke topik, disini saya akan membahas Nativescript Sidekick yang akhir-akhir ini saya merasa susah untuk dibuka. dan itu membuat saya kesal. Tapi setelah saya coba cari tahu masalahnya tidak begitu besar, dan biangkeroknya ada pada service Nativescript Cloud yang mana sekarang memang sudah tidak didukung lagi semenjak perpindahan pengembang dari Telerik ke NStudio. Cara memperbaiki masalah ini cukuplah sederhana, yaitu kamu cukup jalankan perintah berikut pada terminal kamu untuk menghapus ekstensi Nativescript Cloud :</p><p></p><pre><code>tns extension uninstall nativescript-cloud</code></pre><p></p><div style="text-align: justify;">Sudah hanya itu saja (<a href="https://github.com/ProgressNS/sidekick-feedback/issues/290">https://github.com/ProgressNS/sidekick-feedback/issues/290</a>), jika sekarang kamu coba buka Nativescript Sidekick kamu, maka akan kembali berjalan normal sebagaimana mestinya.</div><div style="text-align: justify;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-9edLUbVIDAw/X42gpFqPgYI/AAAAAAAALRA/3xuuwvJcMg0Yn5sznBI2XeLdkU7HCQCawCLcBGAsYHQ/s1172/ScreenShot_20201019212007.png" style="margin-left: 1em; margin-right: 1em;"><img alt="Nativescript Sidekick tidak bisa di buka karena ada error Cannot find module temp" border="0" data-original-height="720" data-original-width="1172" height="246" src="https://1.bp.blogspot.com/-9edLUbVIDAw/X42gpFqPgYI/AAAAAAAALRA/3xuuwvJcMg0Yn5sznBI2XeLdkU7HCQCawCLcBGAsYHQ/w400-h246/ScreenShot_20201019212007.png" title="Nativescript Sidekick tidak bisa di buka karena ada error Cannot find module temp" width="400" /></a></div><div style="text-align: justify;"><br /></div><div style="text-align: justify;">Bisa kamu coba, semoga beruntung :)</div><div style="text-align: justify;"><br /></div><div style="text-align: justify;">Mungkin tulisan ini singkat saja, dan saya akhiri sampai disini, semoga bermanfaat, terima kasih :)</div><div style="text-align: justify;"><br /></div>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0tag:blogger.com,1999:blog-2556722185382757751.post-21983474908625998842020-10-16T15:40:00.000+07:002023-12-27T12:45:58.225+07:00Cara memperbaiki kapasitas flashdisk atau hardisk yang tiba-tiba hilang atau mengecil di windows<div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-ShDljZAlLBE/X4lb4rvS2zI/AAAAAAAALQY/mTTHjUE77tUshEALxSId4IQouNv5p_UYwCLcBGAsYHQ/s680/usb-drive-wrong-size-featured.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="wrong size | Cara memperbaiki kapasitas flashdisk atau hardisk yang tiba-tiba hilang atau mengecil di windows" border="0" data-original-height="311" data-original-width="680" height="183" src="https://1.bp.blogspot.com/-ShDljZAlLBE/X4lb4rvS2zI/AAAAAAAALQY/mTTHjUE77tUshEALxSId4IQouNv5p_UYwCLcBGAsYHQ/w400-h183/usb-drive-wrong-size-featured.png" title="wrong size | Cara memperbaiki kapasitas flashdisk atau hardisk yang tiba-tiba hilang atau mengecil di windows" width="400" /></a></div><p style="text-align: justify;">Kapasitas ruang penyimpanan flashdisk atau hardisk yang tiba-tiba hilang atau mengecil, mungkin kamu pun pernah merasakannya, padahal awalnya ruang penyimpanan flashdsik itu 4GB, tiba-tiba berubah jadi 3MB. Itu sangat membuat saya kesal, hal ini sering saya alami ketika membuat flashdisk bootable untuk instalasi OS, atau mungkin kamu pernah merasakan hal yang sama namun dengan kondisi yang berbeda.</p><p style="text-align: justify;">Sekarang saya ingin berbagi sedikit seputar cara membereskan masalah ini, caranya cukup mudah. Untuk cara ini saya menggunakan sistem operasi windows.</p><p style="text-align: justify;">Pertama buka Command Prompt sebagai Administrator</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-5-enZc-pH_s/X4lNz-Rf1FI/AAAAAAAALQA/6cH7w5B5VJ0rpuG3lF81v6xOuFvhlFnqwCLcBGAsYHQ/s627/cmd_search.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="wrong size | Cara memperbaiki kapasitas flashdisk atau hardisk yang tiba-tiba hilang atau mengecil di windows" border="0" data-original-height="627" data-original-width="340" height="320" src="https://1.bp.blogspot.com/-5-enZc-pH_s/X4lNz-Rf1FI/AAAAAAAALQA/6cH7w5B5VJ0rpuG3lF81v6xOuFvhlFnqwCLcBGAsYHQ/w174-h320/cmd_search.png" title="wrong size | Cara memperbaiki kapasitas flashdisk atau hardisk yang tiba-tiba hilang atau mengecil di windows" width="174" /></a></div><br /><p>Jika Command Prompt sudah terbuka ikuti langkah dibawah ini, perhatikan juga pada gambar di bawah ini </p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-rezGBvAQnrc/X4lXVm-GWbI/AAAAAAAALQM/63AsjKbYfmY_B-fLzh6WSz59sRROBSYmwCLcBGAsYHQ/s984/ScreenShot_20201016151452.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="wrong size | Cara memperbaiki kapasitas flashdisk atau hardisk yang tiba-tiba hilang atau mengecil di windows" border="0" data-original-height="813" data-original-width="984" height="330" src="https://1.bp.blogspot.com/-rezGBvAQnrc/X4lXVm-GWbI/AAAAAAAALQM/63AsjKbYfmY_B-fLzh6WSz59sRROBSYmwCLcBGAsYHQ/w400-h330/ScreenShot_20201016151452.png" title="wrong size | Cara memperbaiki kapasitas flashdisk atau hardisk yang tiba-tiba hilang atau mengecil di windows" width="400" /></a></div><br /><p style="text-align: justify;">Pada kasus ini saya akan coba memperbaiki sebuah flashdisk yang tiba-tiba ruang penyimpanannya menghilang, semula 4GB tiba-tiba menyusut jadi 3.5MB, jika command prompt sudah terbuka jangan lupa colokan flashdisknya.</p><p></p><ul style="text-align: left;"><li style="text-align: justify;">Pertama ketikan perintah <i><u><b>diskpart</b></u></i></li><li style="text-align: justify;">Kemudian ketikan perintah <i><u><b>list disk</b></u></i> untuk menampilkan daftar disk yang tersedia (lihat di gambar bagian nomor 2). Jika dilihat dari cmd ruang penyimpanan flashdisk terlihat normal, yaitu 4GB atau sekitar 3841MB, namun jika di lihat dari file expoler yang trbaca hanya 3MB saja.</li><li style="text-align: justify;">Karena flashdisk saya berada di disk 2 berarti ketikan perintah <i><u><b>select disk 2</b></u></i>, nomor disk di sesuaikan sendiri, sesuai yang tertera di layar cmd kamu.</li><li style="text-align: justify;">Lalu ketik perintah <b><i><u>clean</u></i></b>.</li><li style="text-align: justify;">Dilanjut dengan mengetik perintah <b><i><u>create partition primary</u></i></b></li><li style="text-align: justify;">Lalu ketik perintah <b><i><u>active</u></i></b></li><li style="text-align: justify;">Ketik lagi perintah <b><i><u>select partition disk 2</u></i></b></li><li style="text-align: justify;">Langkah terakhir adalah memformat flashdisk caranya dengan mengetikan <b><i><u>format fs=fat32</u></i></b>. untuk tipe disknya kamu bisa atur sesuai kebutuhan kamu, karena disini saya menggunakan flashdisk maka saya akan memformatnya menjadi tipe fat32, jika hardisk mungkin kamu bisa menggunakan ntfs atau bisa juga yang lainnya.</li></ul><div style="text-align: justify;">Jika merasa bingung, bisa ikuti step by stepnya sesuai gambar layar command prompt di atas. Mungkin tulisan kali ini saya cukupkan sampai disini dulu, semoga bermanfaat untuk kamu, terima kasih :)</div><div><br /></div><p></p>Nicht Menschenhttp://www.blogger.com/profile/10528491686992932519noreply@blogger.com0