Selasa, 20 November 2018

[Javascript] Membuat Stopwatch

Diartikel ini kita akan membuat Stopwatch menggunakan Javascript. Stopwatch yang dibuat terdapat menit, detik dan milisecond sebanyak 3 digit dan terdapat satu tombol yang berfungsi untuk memulai, berhenti dan me-reset waktunya.

Pertama
Buat file html dan strukturnya dengan 3 label dan 1 button sebagai berikut:

<html>
<head>
<title>Yudha's World</title>
</head>
<body>
<b>Yudha's World - Stopwatch</b><br>
<label><time>00</time>:</label><label><time>00</time></label>:<label><time>00</time></label>
<br>
<input type="button" id="btnStopWatch" value="start" onclick="stopwatch()"/>
</body>
</html>

Kedua
Tulis javascriptnya sebagai berikut:

<script>
//variabel
var menit = document.getElementsByTagName('label')[0];
var detik = document.getElementsByTagName('label')[1];
var mili = document.getElementsByTagName('label')[2];

var timeBegan = null
    , timeStopped = null
    , stoppedDuration = 0
    , started = null;
</script>

pada bagian ini kita baru mendeklarasikan variabel yang akan dipakai.

Ketiga
Kita buat fungsi clockRunning() setelah deklarasi variabel, kodenya sebagai berikut:

function clockRunning(){
    var currentTime = new Date()
        , timeElapsed = new Date(currentTime - timeBegan - stoppedDuration)
        , min = timeElapsed.getUTCMinutes()
        , sec = timeElapsed.getUTCSeconds()
        , ms = timeElapsed.getUTCMilliseconds();

menit.innerHTML = min > 9 ? min : "0" + min+ ":";
detik.innerHTML = sec > 9 ? sec : "0" + sec;
mili.innerHTML = ms > 99 ? ms : ms > 9 ? "0" + ms : "00" + ms;
}

fungsi clockRunning ini adalah fungsi utama pada stopwatch ini yang akan dipanggil oleh fungsi start(), pada fungsi clockRunning akan memberikan nilai dari menit, detik dan milisecond dari variabel timeElapsed dengan mengambil minutes, seconds dan miliseconds menggunakan getUTC

timeElapsed berisi nilai dari object date yang dikurangi variabel object currentTime, timeBegan dan stoppedDuration.

Karena currentTime diisi dengan date object setiap kali clockRunning di eksekusi maka variabel currentTime berisi nilai dari date saat ini seperti "Tue Nov 20 2018 09:25:59 GMT +0700" setiap kali clockRunning dipanggil sesuai setIntervalnya.

timeBegan difungsi start() juga berisi date object sehingga currentTime yang tadi berisi 09:25:59 diambil timeBegan yang sewaktu start() di eksekusi bernilai 09:24:59 misalnya maka timeElapsed adalah pengurangan dari dua object date tersebut yang nanti akan dipecah atau diformat lagi sesuai jenisnya apakah minute,seconds dan miliseconds yang ditampilkan ke label.

Ke-empat
Selanjutnya setelah fungsi clockRunning, kita buat fungsi start(), stop() dan reset() 

function start() {
    if (timeBegan === null) {
        timeBegan = new Date();
    }

    if (timeStopped !== null) {
        stoppedDuration += (new Date() - timeStopped);
    }

    started = setInterval(clockRunning, 10);
}

function stop() {
    timeStopped = new Date();
    clearInterval(started);
}

function reset() {
    clearInterval(started);
    stoppedDuration = 0;
    timeBegan = null;
    timeStopped = null;
menit.innerHTML = "00"+":";
detik.innerHTML = "00";
mili.innerHTML = "00";
}


Terakhir
Kita buat fungsi bernama stopwatch() yang akan di-eksekusi ketika button atau tombol btnStopwatch di klik.

function stopwatch(){
var nama = document.getElementById("btnStopWatch").value;
if(nama == "start"){
document.getElementById("btnStopWatch").value = "stop";
start();
}else if(nama == "reset"){
document.getElementById("btnStopWatch").value = "start";
reset();
}else if(nama == "stop"){
document.getElementById("btnStopWatch").value = "reset";
stop();
}
}

kodenya sederhana, kita hanya melakukan pengecekkan terhadap value dari tombol btnStopwatch. Jika valuenya bernilai start, maka panggil fungsi start dan ubah value tombol btnStopwatch menjadi stop dan seterusnya.

Hasil Akhir



Ketika kita klik Start maka stopwatch berjalan dan teks pada tombol menjadi stop

Klik Stop, maka stopwatch berhenti dan teks pada tombol menjadi reset

Jika diklik reset maka menjadi tampilan semula dan teks pada tombol kembali menjadi start

Semoga Bermanfaat


Artikel ini dibuat oleh Yudha Tri Putra sebagai penulis artikel, diperbolehkan menyalin artikel ini secara utuh tanpa mengubah atau menambah isi artikel.

Minggu, 11 November 2018

[Review] NoVirusThanks OSArmor



Sebagai pemakai Sistem Operasi Windows, tentu kita akrab dengan software keamanan seperti AntiVirus, Malware Cleaner, Anti Keylogger, Anti Executable dan sebagainya yang kita kenal. Ternyata selain itu ada lagi software keamanan bernama OSArmor dari NoVirusThanks atau biasa disingkat menjadi NVT. Karena itu mari kita review OSArmor ini.

Instalasi
Proses instalasi sangat mudah, seperti hanya meng-ekstrak file. Tidak sampai 20 detik OSArmor sudah berhasil terinstall.

Review
Setelah instalasi berhasil, maka OSArmor akan otomatis berjalan secara real-time dan muncul tampilan utama seperti berikut :



Sekilas dilihat mirip software Anti Executable dengan slogan An Additional Layer of Defense. Terlihat statistik dari proses yang diblok oleh OSArmor beserta proses apa yang terakhir diblok dan waktu kejadiannya.

Pada tab Videos terdapat list video berupa demo penggunaan OSArmor yang dapat memblok suatu program atau dokumen yang mengandung atau berisi exploit


Penggunaan Memory nya juga kecil, ringan sekali. Jika dilihat secara detail, terlihat 2 proses OSArmor berjalan di memory yaitu proses normal dan proses services yang berjalan dibackground  dengan peak memory saat ini mencapai hanya 30MB. Malah Google Chrome yang memakan memory sangat besar disini :)




Beralih ke setting atau konfigurasi menu OSArmor, wah lengkap banget. Teman-teman bisa mensetting sendiri sesuai kebutuhan apakah perlu melakukan blok kepada suatu aplikasi yang berjalan otomatis dari file zip misalnya, atau apakah suatu script yang di eksekusi oleh wscript (biasanya virus VBS atau JS) bahkan spesifik dilokasi tertentu.






Bisa juga memblok suatu proses atau aplikasi dengan nama yang umum atau biasa dipakai oleh Virus atau Malware (mirip seperti blacklist disuatu aplikasi Anti Exe).


OSArmor juga bisa melakukan whitelist atau exclude (pengecualian) terhadap suatu proses atau aplikasi berdasarkan nama proses, command line, parent prosesnya dan signernya (publishernya).



Testing
Disini saya tidak menggunakan PoC Malware yang saya punya atau tidak melakukan test dengan real sample virus seperti saat saya mereview Zemana AntiLogger Free karena Virtual Machine saya hilang, jadi saya mencoba rename suatu aplikasi saya sesuai dengan nama proses yang akan diblok oleh OSArmor, tidak lupa saya aktifkan proteksinya untuk nama tersebut.



Hasilnya 
takeown.exe masih bisa berjalan disistem. hmm apakah perlu ada kategori atau behaviour khusus supaya OSArmor tidak mengalami False Alarm?


Ketika saya test dengan melakukan end process untuk mengetest self defense OSArmor, proses services OSArmor bisa diterminate dan proteksi menjadi disabled. Tapi jika proses UI yang saya terminate, OSArmor bisa berjalan kembali otomatis. Padahal setting self defense sudah aktif.

Disini saya agak heran kenapa OSArmor tidak melakukan hooking sehingga prosesnya tidak bisa diterminate malah melakukan reboot aplikasi.


Saya coba dengan proses Avast Agent, jika kita melakukan end process, maka proses avast tidak bisa diterminate. Seharusnya seperti ini jika melakukan self defense.



Setelah proteksi OSArmor disabled, ketika saya ingin mengaktifkan proteksinya kembali namun selalu kembali ke disabled. Tidak ada notifikasi bahwa OSArmor gagal menjalankan ulang proteksinya. Satu-satunya cara mengaktifkan kembali dengan mengaktifkan di services management windows (services.msc) atau di Tab services di Task Manager



Test Terakhir
Ok, kita pastikan OSArmor bisa memblok eksekusi proses dari VBS atau Visual Basic Script, saya coba buat VBS baru hanya dengan perintah memunculkan MessageBox


Hasilnya
Yes, berhasil terdeteksi. terlihat juga di statistik bahwa OSArmor memblok proses wscript.exe. Ya meskipun hanya script biasa dan tidak berbahaya.




Pada situs resmi NVT, OSArmor juga bisa memblok suatu program berdasarkan tingkah lakunya dan bisa memblok dan mendeteksi Ransomware. Saya rasa Tools ini ditujukan untuk user yang sudah advanced bukan untuk user awam. Nah sekarang tergantung teman-teman apakah perlu proteksi tambahan dengan OSArmor ini?Jika diperlukan, bisa dilakukan test lebih mendalam apakah OSArmor ini sangat dibutuhkan oleh kita pengguna sistem operasi Windows

Catatan : meskipun diartikel masuk kategori Antivirus, tapi OSArmor ini bukan Antivirus ya.
Semoga Bermanfaat

Download OSArmor v1.4.1.0 (8 MB)  https://www.novirusthanks.org/products/osarmor/


Artikel ini dibuat oleh Yudha Tri Putra sebagai penulis artikel, diperbolehkan menyalin artikel ini secara utuh tanpa mengubah atau menambah isi artikel.

Windows 10 Dengan Tema Kucing


Sistem Operasi anda sudah menggunakan Windows 10 dan anda menyukai kucing? Artikel ini berarti untuk anda :) . Windows menyediakan theme atau tema kucing untuk Windows 10 anda bernama Cats Everywhere.

Download Cats Everywhere di Softpedia


Lalu double klik file yang sudah didownload (CatsEverywhere.themepack) maka tema kucing tersebut sudah terinstall di Windows anda.

Terdapat 10 wallpaper kucing yang berganti setiap 10 menit secara defaultnya, berikut wallpaper yang disediakan di CatsEverywhere.












Semoga Bermanfaat

Artikel ini dibuat oleh Yudha Tri Putra sebagai penulis artikel, diperbolehkan menyalin artikel ini secara utuh tanpa mengubah atau menambah isi artikel.

Sabtu, 03 November 2018

[VB .Net] UI Web Theme untuk Desktop


Pada artikel ini saya ingin membagikan project atau lebih tepatnya ide saya tentang suatu tampilan untuk aplikasi berbasis desktop dengan tampilan seperti web. Terdapat 2 template form yang saya sediakan saat ini yaitu Dashboard dan Table.





Proses pembuatannya sangat sederhana, cukup buat panel yang properties dock nya diatur (left,fill,bottom) dan membuat tombol dengan tipe flat dan border dengan value 0. Font yang saya gunakan yaitu Segoe UI dengan size 10.

Tampilan ketika tombol Dashboard di hover.





Disarankan teman-teman juga membaca artikel saya sebelumnya yaitu Membuat MDI Form, agar lebih mudah memahami source code dan properties yang digunakan.

Color scheme atau palette diambil dari : https://www.color-hex.com/color-palette/185
Clone atau Download Projectnya di github

Semoga Bermanfaat

Artikel ini dibuat oleh Yudha Tri Putra sebagai penulis artikel, diperbolehkan menyalin artikel ini secara utuh tanpa mengubah atau menambah isi artikel.

First Look Visual Studio 2017


Ya first look dari Visual Studio 2017 meskipun saat ini sudah November 2018 :)

Diartikel ini kita akan melihat sekilas apa sih yang ada di Visual Studio 2017 ini, mulai dari cara download, install dan penggunaannya. Semoga menjadi pertimbangan teman-teman yang mau upgrade dari Visual Studio sebelumnya (seperti saya) atau bahkan pindah dari Visual Basic 6.0.

Download Visual Studio 2017
Pertama, kita akan mendownload versi community nya, karena versi pro dari Visual Studio setahu saya mencapai harga 9 juta'an (dilihat dari official store Microsoft Indonesia).

Jalankan file setupnya kemudian tunggu sampai proses download installernya selesai.

Installasi
Saat proses instalasi, kita bisa memilih komponen apa saja yang mau kita install. Banyak sekali pilihannya bahkan saya juga baru tahu sampai ada pilihan untuk Pyhton dan Node.js. Install sesuai kebutuhan saja, karena saya sekarang fokus ke desktop development, maka saya hanya memilih .Net Desktop Development

Pada pojok kanan bawah, tertera berapa GB free space diharddisk yang akan dibutuhkan, untuk desktop development saja membutuhkan sekitar 3.16 GB. Pilih Download all, then Install kemudian klik tombol Install.



Proses berikutnya menunggu download selesai, 783 MB tidak terlalu besar ya :)


Setelah download selesai, selanjutnya menunggu proses install sekitar 255 package!. Tidak lama hanya sekitar 8-10 menit seingat saya.


Selesai, maka kita akan diminta restart windows, lakukan restart dengan klik tombol Restart.



First Look
Petama kali Visual Studio 2017 dijalankan, maka tampil welcome screen seperti ini. Bisa sign-in untuk publish code ke git dan lainnya. Bisa di abaikan dengan pilih Not now, maybe later


Berikutnya melakukan development setting di awal, bisa memilih style bahasa pemrograman default dan theme dari IDE atau code editornya. Klik tombol Start Visual Studio untuk memulai ngoding di versi 2017 ini.

Masuk tahap preparing, ini juga sebentar kok tidak sampai 2 menit.


Tampilan IDE
Tampilan awal IDE, terasa ada yang berbeda?



Tampilan ketika membuat Project baru, menurut saya ada yang berbeda dibagian yang saya beri kotak putih dibagian location dan memilih target versi frameworknya.


Test membuat Button dan Label.


Pada code editor terdapat Light Bulb yang menampilkan syntax jika di klik.




Dan ketika mencoba menjalankan program maka terdapat Diagnostic Tools. Karena saya belum pernah mencoba Visual Studio 2015, saya tidak tahu apakah fitur ini sudah ada sebelumnya.


Hello World dari Visual Studio 2017 :)


Semoga Bermanfaat

Artikel ini dibuat oleh Yudha Tri Putra sebagai penulis artikel, diperbolehkan menyalin artikel ini secara utuh tanpa mengubah atau menambah isi artikel.
(C) 2018. Diberdayakan oleh Blogger.

Categories

Followers