<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ali Nurdin</title>
    <description>The latest articles on DEV Community by Ali Nurdin (@iamalinurdin).</description>
    <link>https://dev.to/iamalinurdin</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F625412%2F0e472e6c-eab8-4cc8-b7d4-45062aa77f14.jpeg</url>
      <title>DEV Community: Ali Nurdin</title>
      <link>https://dev.to/iamalinurdin</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/iamalinurdin"/>
    <language>en</language>
    <item>
      <title>Set operator di Mysql</title>
      <dc:creator>Ali Nurdin</dc:creator>
      <pubDate>Mon, 31 Jan 2022 00:58:26 +0000</pubDate>
      <link>https://dev.to/iamalinurdin/set-operator-di-mysql-5be2</link>
      <guid>https://dev.to/iamalinurdin/set-operator-di-mysql-5be2</guid>
      <description>&lt;p&gt;Set adalah sebuah operator dari hasil sebuah operasi dari 2 SELECT query.&lt;br&gt;
Jenis operator Set:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;UNION&lt;/li&gt;
&lt;li&gt;UNION ALL&lt;/li&gt;
&lt;li&gt;INTERSECT&lt;/li&gt;
&lt;li&gt;MINUS&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Union
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;adalah operasi yg menggabungkan 2 hasil SELECT, yg dimana jika ada data yg duplikat, maka data duplikatnya akan dihapus&lt;/li&gt;
&lt;li&gt;contoh:
SELECT DISTINCT email FROM users
UNION
SELECT DISTINCT email FROM guestbooks;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Union All
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;adalah operasi yg sama dengan UNION, namun data yg duplikat tetap akan ditampilkan dihasil query nya&lt;/li&gt;
&lt;li&gt;contoh 1
SELECT DISTINCT email FROM users
UNION ALL
SELECT DISTINCT email FROM guestbooks;&lt;/li&gt;
&lt;li&gt;contoh 2
SELECT emails.email, COUNT(emails.email) FROM 
(SELECT email FROM users
UNION ALL
SELECT email FROM guestbooks) as emails
GROUP BY emails.email;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Intersect
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;operasi menggabungkan 2 query, namun data yg ditampilkan ada data yg terdapat dari kedua SELECT query&lt;/li&gt;
&lt;li&gt;jika ada data yg tidak terdapat disalah satu SELECT query, maka data tersebut tidak akan ditampilkan&lt;/li&gt;
&lt;li&gt;data tersebut tidak dalam duplikat&lt;/li&gt;
&lt;li&gt;MySQL tidak memiliki operator INTERSECT, untuk melakukannya, harus menggunakan JOIN atau SUBQUERY&lt;/li&gt;
&lt;li&gt;contoh 1
SELECT DISTINCT email FROM users
WHERE email IN (SELECT DISTINCT email FROM guestbooks);&lt;/li&gt;
&lt;li&gt;contoh 2
SELECT DISTINCT users.email FROM users
INNER JOIN guestbooks ON (guestbooks.email = users.email);&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Minus
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;adalah operasi query yg dimana jika ada data yg sama dari 2 SELECT query, maka data
dari SELECT query yg kedua akan dihilangkan.&lt;/li&gt;
&lt;li&gt;artinya, jika data di query pertama dan query kedua ada yg sama, data di query kedua
akan dihilangkan&lt;/li&gt;
&lt;li&gt;MySQL tidak memiliki operator MINUS, untuk melakukannya hal ini bisa menggunakan JOIN&lt;/li&gt;
&lt;li&gt;contoh 1
SELECT DISTINCT guestbooks.email, users.email FROM users
LEFT JOIN guestbooks ON (users.email = guestbooks.email)
WHERE guestbooks.email is NULL;&lt;/li&gt;
&lt;li&gt;operator ini cocok untuk menampilkan data users yg belum pernah mengisi guestbooks&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>mysql</category>
      <category>database</category>
      <category>php</category>
      <category>programming</category>
    </item>
    <item>
      <title>this is (not) the end</title>
      <dc:creator>Ali Nurdin</dc:creator>
      <pubDate>Fri, 14 May 2021 18:20:01 +0000</pubDate>
      <link>https://dev.to/iamalinurdin/this-is-not-the-end-c3m</link>
      <guid>https://dev.to/iamalinurdin/this-is-not-the-end-c3m</guid>
      <description>&lt;p&gt;penulis cuman iseng aja nulis ini, semata-mata cuma buat motivasi penulis, syukur-syukur kalau misalnya teman-teman pembaca bisa termotivasi dari tulisan ini, hehehe.&lt;/p&gt;

&lt;p&gt;kalian pernah ga sih, ngerasa terpuruk karena sesuatu, misalnya kehilangan orang yg kalian sayang, sahabat yang tiba-tiba ngehilang dan ketika tidak sengaja ketemu dia berubah total, kuliahnya kacau balau, kehilangan teman-teman yang satu frekuensi atau hal lainnya? mungkin ketika kalian ngerasain salah satu hal tersebut, rasanya dunia sudah selesai, kalian ngerasa sendiri dan kalian merasa down atau putus asa.&lt;/p&gt;

&lt;p&gt;penulis sendiri pernah mengalaminya, semuanya malahan.&lt;/p&gt;

&lt;p&gt;hal tersebut bukan akhir dari semuanya. kehilangan sesuatu bukan berarti kalian kehilangan harapan untuk bisa lebih baik lagi kedepannya. karena masa depan, kita tidak akan pernah tau akan seperti apa.&lt;/p&gt;

&lt;p&gt;sengaja penulis memasang foto background Sergio Perez, pembalap Formula One, yang berhasil memenangkan balapan pertamanya di Bahrain beberapa bulan lalu, karena penulis ingin sedikit nyeritain doi dan balapan tersebut. mungkin ga detail tapi diambil garis besarnya aja.&lt;/p&gt;

&lt;p&gt;perjalanan doi menjadi pemenang balapan tidak mudah. di lap pertama, doi berada diposisi ketiga dari 20 pembalap. namun di lap yang sama, mobil doi tertabrak dari belakang oleh pembalap lain yang bikin doi melintir keluar dari trek balapan dan akhirnya berada diposisi terakhir. mungkin saat itu, Perez udah pasrah gakan bisa dapet poin, setidaknya. tapi takdir berkata lain. ditengah balapan, pembalap-pembalap diposisi depan banyak yang mengalami hal apes, seperti ban mobilnya pecah, atau ada kerusakan mobil yang menyebabkan mereka harus masuk pit stop, atau bahkan menyelesaikan balapan lebih awal.&lt;/p&gt;

&lt;p&gt;setelah 87 lap balapan, di lap terakhir, ceritanya berbanding terbalik dari yang terjadi di lap pertama, Perez berhasil menang balapan dengan gap waktu dari posisi kedua kurang lebih 7 detik.&lt;/p&gt;

&lt;p&gt;yang penulis ambil hikmahnya dari sini adalah, meskipun kita terpuruk diawal, bukan berarti kita akan terus terpuruk sampai akhir. anggap saja, ketika kita terpuruk, itu adalah sebuah ujian yang harus kita lewati, karena tanpa ujian, kita gakan pernah naik kelas, kan?&lt;/p&gt;

&lt;p&gt;ada masih banyak hal yang bisa kita capai. mungkin ada yang bercita-cita ingin membuat start-up, membuat sebuah usaha, kerja di perusahaan besar seperti google, apple atau lainnya, kita masih bisa mengejar mimpi-mimpi kita, asalkan satu hal yang harus kita penuhi; jangan pernah putus asa untuk mengejar sesuatu.&lt;/p&gt;

&lt;p&gt;terima kasih sudah membaca.&lt;/p&gt;

</description>
      <category>motivation</category>
      <category>mentalhealth</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Higher Order Function di Javascript</title>
      <dc:creator>Ali Nurdin</dc:creator>
      <pubDate>Thu, 13 May 2021 02:14:27 +0000</pubDate>
      <link>https://dev.to/iamalinurdin/higher-order-function-di-javascript-4jbg</link>
      <guid>https://dev.to/iamalinurdin/higher-order-function-di-javascript-4jbg</guid>
      <description>&lt;p&gt;Higher Order Function singkat kata adalah sebuah function yang memiliki function sebagai argument-nya ataupun function sebagai nilai return dari function tersebut.&lt;/p&gt;

&lt;p&gt;Function yang menjadi argument atau nilai return dari sebuah Higher Order function disebut callback function.&lt;/p&gt;

&lt;p&gt;Mungkin tanpa sadari, ada beberapa higher order function yang pernah teman-teman pakai, contohnya beberapa function array seperti find, filter dan banyak lagi.&lt;/p&gt;

&lt;p&gt;Find adalah sebuah function array yang mengembalikan sebuah nilai yang sudah ditentukan.&lt;/p&gt;

&lt;p&gt;Contoh penerapan find:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
const number = numbers.find(number =&amp;gt; number &amp;gt;= 5 // 5 adalah nilai yang ingin dicari)
console.log(number) // menampilkan angka 5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Script diatas menunjukan bagaimana cara kita mencari angka 5 dari array numbers yang berisi angka dari 1 sampai dengan 10. nilai hasil pencarian tersebut nantinya di assign ke konstanta number dan lalu ditampilkan menggunakan console.log.&lt;/p&gt;

&lt;p&gt;Lalu bagaimana jika nilai yang dicari tidak ada? maka secara otomatis callback akan me-return undefined.&lt;/p&gt;

&lt;p&gt;Contoh lain dari higher order function yaitu filter. Filter akan memilah nilai yang ditentukan lalu dikembalikan menjadi sebuah array baru.&lt;/p&gt;

&lt;p&gt;Contoh penerapan filter:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const numbers = [1, 23, 21, 51, 43, 2, 54, 34]
const newNumbers = numbers.filter((number) =&amp;gt; number &amp;gt; 40)
console.log(newNumbers) // [ 51, 43, 54 ]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Array numbers berisi nilai acak. Dalam contoh ini, kita ingin mencari nilai lebih dari sama dengan 40 dari array numbers. Hasil pencarian tersebut akan menghasilkan array baru newNumbers yang berisi [ 51, 43, 54 ].&lt;/p&gt;

&lt;p&gt;Berikut pengertian dari higher order function, contoh penerapannya dan function-function yang termasuk higher order function.&lt;/p&gt;

&lt;p&gt;terima kasih sudah membaca.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>node</category>
    </item>
    <item>
      <title>Arrow Function di Javascript</title>
      <dc:creator>Ali Nurdin</dc:creator>
      <pubDate>Wed, 12 May 2021 21:14:44 +0000</pubDate>
      <link>https://dev.to/iamalinurdin/javascript-arrow-function-4bf2</link>
      <guid>https://dev.to/iamalinurdin/javascript-arrow-function-4bf2</guid>
      <description>&lt;p&gt;Pada Javascript, arrow function adalah sebuah mekanisme pembuatan function expression tanpa harus menuliskan keyword 'function'.&lt;br&gt;
Berikut contoh arrow function:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let greet = () =&amp;gt; console.log('halo')
// menjalankan function greet
greet()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Keistimewaan lainnya dari arrow function yaitu adanya implicit return.&lt;br&gt;
Implicit return adalah sebuah cara sebuah arrow function mengembalikan nilai tanpa harus menuliskan keyword 'return'.&lt;br&gt;
Contoh implicit return:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let multiple = (number1, number2) =&amp;gt; number1 * number2
console.log(multiple(10, 20))
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Implicit return ini hanya berlaku jika arrow function ditulis dengan satu baris saja. Kalau muli line, maka harus secara explisit dituliskan keyword 'return'-nya&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let multiple = (number1, number2) =&amp;gt; {
   return number1 * number2
}
console.log(multiple(10, 20))
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;berikut penjelasan singkat tentang arrow function di Javascript, terima kasih sudah membaca artikel ini.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>node</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
