Saturday 29 October 2016

Google : Advanced Technology And Projects (ATAP)

Selamat siang semua, pada kali ini saya akan share tentang project baru yang dikembangkan oleh google. Berawal dari menonton videonya di YouTube, membuat saya tertarik untuk menulis sebuah artikel untuk blog ini.
Google yang awalnya merupakan sebuah search engine (mesin pencari), berkembang menjadi perusahaan yang sangat besar. Bahkan sekaranga google yang paling mendominasi world wide yang ada di dunia ini.
Gambar Google ATAP by balidev.top

Pada awal 2016 ini, google membentuk tim untuk membuat projects yang bernamakan Google ATAP (Advanced Technology And Projects). Jika kalian tertarik untuk melihat langsung silakan tonton videonya di YouTube, saya yakin kalian akan bengong sambil bilang "ini luar biasa".

Adapun, prototype atau projects yang dikembangkan adalah sebagai berikut:
  1. Project Soli
  2. Merupakan project yang dikembangkan dengan menggunakan teknologi radar, radar akan mendeskripsikan interaksi yang dilakukan oleh manusia melalui sensor yang sangat sensitif. Sehingga semua gesture akan dapat dikenali. Sehingga kita dapat mengatur perangkat dengan cepat hanya melalui gesture tangan saja.
  3. Project Jacquard
  4. Project ini dikembangkan untuk kebutuhan industri pakaian, dimana teknologi akan diterapkan kedalam tenunan pakaian. Sehingga selain berfungsi sebagai fashion pakaian tersebut juga bisa sebagai alat interaktif. Project ini memungkinkan designer dan developer membuat tekstil yang sensitif kedalam produk mereka.
  5. Google Spotlight Stories
  6. Kalau teknologi ini mungkin sudah bisa kita rasakan melalui virtual reality yang sudah banyak beredar di Indonesia, saya sendiri pernah mencoba dengan google cardboard. Ini merupakan layanan yang disediakan oleh google, membuat kita seolah-olah berada didalam sebuah cerita yang ada di ponsel kita. Yah, membuat kita tertawa sendiri dan mencoba mengikuti gerakan tokoh yang ada di film tersebut.
  7. Project ARA
  8. Layaknya sebuah lego, kini sebuah smartphone bisa di bongkar pasang. Google menyediakan slot-slot yang bisa kita custom sendiri, seperti menambahkan modul kamera, modul speaker supaya suaranya lebih keras. Saya sendiri sangat tertarik dengan perangkat ini, semoga nantinya bisa masuk ke Indonesia. 
Mungkin sekian yang bisa saya bahas mengenai project ATAP milik google ini, semoga teknologi tersebut cepat masuk ke negara kita supaya developer mempunyai waktu lebih untuk mengembangkan teknologi tersebut supaya bisa kita bisa terapkan dalam kehidupan sehari-hari, guna untuk mempermudah dan mempercepat pekerjaan kita. Thank You

Baca juga artikel lainnya:

Friday 28 October 2016

Google Allo : Simple Instant Message with Google Assistants

Selamat malam semua, sudah 3 hari tidak update sekarang ada waktu sebelum tidur saya sempatin untuk menulis artikel pada blog ini. Semoga informasi yang saya beri kali ini bermanfaat untuk kalian semua.
Sejak adanya Blackberry Messaging (BBM), aplikasi instant message mulai berkembang pesat mulai dari pemain lama yaitu WA yang terus menambah fitur, aplikasi LINE yang berkembang pesat dan masih banyak lagi. Di Tahun ini, google ikut meramaikan hal tersebut dengan merilis aplikasi instant message yang bernama Allo. Penasaran pingin tahu apa saja fiturnya? dibawah akan saya bahas lebih detail.
Design Cover Allo  by BaliDev
1# Simple dan Responsive
Kesan simple dan responsive itu yang pertama saya rasakan saat menggunakan aplikasi ini, mungkin hal ini disebabkan karena fiturnya yang sedikit. Belum ada fitur call pada aplikasi ini, semoga nantinya ditambahkan dan tidak membuat aplikasi menjadi lambat. Perpindahan menu sangat cepat, ini yang membuat aplikasi Allo layak kalian install.

Google Allo AssistansGoogle Allo AssistansGoogle Allo Setting  


2# Sticker lucu

Google Allo StikerSebagai lambang perasaan terkadang seseorang sering menggunakan sticker, fitur ini pun dilengkapi dalam aplikasi ini. Walaupun ketersediaan stickernya masih sedikit, namun kalian akan merasa ada yang beda dari stiker yang tersedia di Google Allo ini, dari segi designnya ciri khas google banget.

3#Fitur Google Assistans
Mungkin ini yang merupakan fitur andalan google allo ini, saya juga merasa bahwa semua informasi bisa saya akses disini, layaknya google now respon dari google assistans ini sangat cepat tergantung koneksi kalian juga. Kalian bisa setting alarm, berlangganan kata bijak dan video lucu di google assistans ini. Pokoknya terasa bahwa kita mengakses semua informasi hanya melalui aplikasi yang ringan ini. Kita akan mendapat jawaban yang cepat dan akurat dari google mengenai info makanan, cuaca dan masih banyak lagi.

Mungkin hanya sedikit yang bisa saya bahas, karena memang aplikasi ini sangat simple sekali google hanya menekankan fitur pengiriman pesan yang cepat dan google assistans pada aplikasi ini. Jika kalian ingin tahu lebih banyak silakan install dari google play store. 
Google Allo Asistants

Baca juga artikel lainnya:


Tuesday 25 October 2016

Cara menampilkan google map pada website

Selamat malam semua, pada malam ini saya akan share tentang cara menambahkan map pada website kalian. Ini berguna untuk menampilkan lokasi kalian, misalkan kalian mau menentukan lokasi COD untuk OLSHOP, lokasi toko atau lokasi kalian pribadi.

Kita hanya menggunakan file html biasa yang didalamnya akan berisi javascript. Sebelum lanjut, dibawah ini saya buat lokasi kampus saya.
Google Map Pada Website
Yang akan kita lakukan adalah konfigurasi lokasi default dan besar zoom diawal. Itu saja gampang kok, silakan kalian ikuti step-stepnya:
1# Silakan kalian copas atau ketik ulang source code dibawah ini:

<!DOCTYPE html>
<html>
<head>
<title>GOOGLE MAPS</title>
<!-- Compiled and minified CSS -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.7/css/materialize.min.css">

<!-- Compiled and minified JavaScript -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.7/js/materialize.min.js"></script>
<style type="text/css">
#map{
width: 750px;
height: 300px;
}
</style>
</head>
<body>

<div class="row" style="margin-top: 100px;">
<div class="col s6 offset-s2">
<div class="card">
<div class="card-image" id="map">

</div>
</div>
</div>
</div>

<script>
function myMap() {
var mapCanvas = document.getElementById("map");
var mapOptions = {
center: new google.maps.LatLng(-8.799077, 115.161562),//mengatur posisi awal pada map, silakan sesuaikan masing-masing
zoom: 20 //mengatur zoom saat pertama map di load
}
var map = new google.maps.Map(mapCanvas, mapOptions);
}
</script>

<script src="https://maps.googleapis.com/maps/api/js?callback=myMap"></script>

</body>
</html>


2# Sekarang kita cari latitude longitude  lokasi yang akan kita tentukan, caranya silakan kalian buka google maps di browser. Pada tutorial ini saya akan menampilkan monas.
Google Map Pada Website
sekarang kita liat koordinat monas dengan klik kanan seperti gambar di atas.
Google Map Pada Website

klik angka-angka itu, sampai kolom seachnya terganti menjadi angka-angka seperti dibawah ini.
Google Map Pada Website

3# Copy pastekan pada code dibagian  center: new google.maps.LatLng(-8.799077, 115.161562),
ganti angkanya dengan angka yang tadi kita cari yaitu posisi monas. Tampilan monas pada map yang ada di map yang kita buat seperti di bawah ini:
Google Map Pada Website

4# Dari gambar di atas, zoomnya terlalu besar sekarang kita atur zoomnya pada bagian code zoom: 20 . ganti 20 sesuai dengan selera kalian yang penting posisinya jelas. Pada tutorial ini saya ganti dengan 16 maka tampilannya seperti dibawah ini.
Google Map Pada Website

Ok, sekian tutorialnya semoga bermanfaat buat kalian semua. Mungkin untuk blog yang memakai blogspot sudah tersedia pluginnya. Tetapi jika kalian ingin menambahkan manual bisa kalian pakai cara di atas.

Ala Bisa Karena Biasa

Baca artikel lainnya:

Monday 24 October 2016

CodeIgniter : Upload Image dan Cara membuatnya

Selamat pagi semuanya, pada kesempatan kali ini saya akan share tentang cara membuat upload image dan menyimpan namanya di dalam database sehingga nanti proses pengambilan datanya mudah.
Buat kalian yang masih bingung, kita akan buat apa silakan lihat screen shoot dibawah ini:
CodeIgniter Image Upload

CodeIgniter Image Upload

oke langsung saja silakan kalian ikuti tutorialnya:
1# Siapkan file codeigniternya dan silakan copy ke folder htdocs kalian masing-masing.

2# Di dalam folder codeigniter tersebut (root folder) buatlah folder bernama "uploads". contohnya seperti screenshoot dibawah ini.

3# Sekarang kalian silakan masukkan framework css nya, pada tutorial ini saya menggunakan materialize. Tidak harus terpaku dengan punya kalian, bagi kalian yang ingin memakai CSS sendiri enggak apa-apa.

4# Setting CodeIgniternya seperti autoload, config, dan database. Saya anggap kalian sudah mengerti karena tutorial ini sudah tingkat lanjut bukan di tingkat dasar. Kalau kalian belum paham silakan pelajari cara instalasi CodeIgniter.

5# Buat database bebas, pada tutorial ini nama database saya balidev dan nama tabelnya upload. Untuk setting fieldnya silakan lihan di gambar bawah ini.
CodeIgniter Image Upoad

6# Langkah selanjutnya buka folder controllers dan buatlah file dengan nama upload.php, sintaksnya seperti dibawah ini:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class upload extends CI_Controller {

public function __construct()
{
parent::__construct();
$this->load->model('mupload');
$this->load->library('form_validation');
}

public function index()
{
$this->load->view('vupload');
}
public function list(){
$result['gambar'] = $this->mupload->tampil();
$this->load->view('vimage', $result);
}

public function upload(){
//berfungsi saat submit ditekan namun file kosong supaya tidak masuk ke database
if (empty($_FILES['imgName']['name']))
{
$this->form_validation->set_rules('imgName', 'Document', 'required');
redirect(base_url());
}
else{
$this->load->library('upload');
$namafile = "file_".time();
//konfigurasi ukuran dan type yang bisa di upload
$config = array(
'upload_path' => "./uploads/", //mengatur lokasi penyimpanan gambar
'allowed_types' => "gif|jpg|png|jpeg|pdf", // mengatur type yang boleh disimpan
'overwrite' => TRUE,
'max_size' => "2048000",//maksimal ukuran file yang bisa diupload, disini menggunankan 2MB
'max_height' => "768",
'max_width' => "1024",
'file_name' => $namafile //nama file yang akan terimpan nanti
);

$this->upload->initialize($config);
if($_FILES['imgName']['name']){
if($this->upload->do_upload('imgName')){
$gambar = $this->upload->data();
//data yang akan di insert ke database
$data = array(
'nama' => $gambar['file_name'],
'type' => $gambar['file_type']
);
$result = $this->mupload->insert($data);
if($result != FALSE){
$pesan['pesan'] = "Gambar Berhasil di upload";
$this->load->view('vupload', $pesan);
}
}
}

}
}
}


/* End of file upload.php */
/* Location: ./application/controllers/upload.php */


Sudah saya kasi komentar pada code-codenya silakan baca pelan-pelan.

7# Pada langkah ini buka folder models dan buatlah file dengan nama mupload.php dan sintaksnya seperti dibawah ini :

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Mupload extends CI_Model {

public $variable;

public function __construct()
{
parent::__construct();

}
public function insert($data){
//memasukkan data gambar ke database
$this->db->insert('upload', $data);
if ($this->db->affected_rows() > 0) {
return true;
}else{
return false;
}
}

public function tampil(){
//mengambil data gambar di database, nanti kita cuma mengambil namanya saja
$this->db->select('*');
$this->db->from('upload');
$query = $this->db->get();
if($query->num_rows()>0){
return $query->result();
}else{
$pesan = "Tidak ditemukan gambar";
return $pesan;
}
}

}

/* End of file mupload.php */
/* Location: ./application/models/mupload.php */


8# Langkah selanjutnya kita akan buatkan form untuk upload filenya pada views. Silakan buka folder views dan buatlah file dengan nama vupload.php. Sintaksnya seperti dibawah ini:

<!DOCTYPE html>
<html>
<head>
<title>Upload Image by BaliDev</title>
<!--Materialize css dan javascript -->
<link href="<?php echo base_url();?>/assets/materialize/css/materialize.min.css" rel="stylesheet">
<link href="<?php echo base_url();?>/assets/materialize/css/materialize.css" rel="stylesheet">
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<script src="https://code.jquery.com/jquery-2.1.2.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.0/js/materialize.min.js"></script>

</head>
<body>
<!--Navbar Materialize -->
<nav>
<div class="nav-wrapper">
<a href="#" class="brand-logo">BaliDev</a>
<ul id="nav-mobile" class="right hide-on-med-and-down">
<li><a href="<?php echo site_url('upload/list')?>">Lihat</a></li>
</ul>
</div>
</nav>
<div class="container">

<div class="row" style="margin-top: 120px">
<div class="col s12 m8 offset-m2 l6 offset-l3">
<div class="card-panel">
<?php if(isset($pesan)){
echo "<h5>$pesan</h5>";
}?>
<div class="row valign-wrapper">
<div class="col s12">
<?php
echo form_open_multipart('upload/upload');?>
<div class='file-field input-field'>
<div class="btn orange">
<span>FILE</span>
<input type="file" name="imgName">
</div>
<div class="file-path-wrapper">
<input class="file-path validate" type="text" name="imgName">
</div>
</br>
</div>
<div class="row center-align">
<input type="submit" value="submit" class="btn orange">
</div>
<?php form_close(); ?>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

Disini yang perlu kalian perhatikan adalah type dan name nya supaya mudah nanti kita mengambilnya pada controller.

9# Jika proses inputnya sudah selesai, sekarang kita akan membuat tampilan semua gambar yang sudah kita input. Masih di folder views dan buatlah file dengan nama vimage.php. Sintaksnya seperti dibawah ini:

<!DOCTYPE html>
<html>
<head>

<title>List Gambar</title>
<!--Materialize css dan javascript -->
<link href="<?php echo base_url();?>/assets/materialize/css/materialize.min.css" rel="stylesheet">
<link href="<?php echo base_url();?>/assets/materialize/css/materialize.css" rel="stylesheet">
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<script src="https://code.jquery.com/jquery-2.1.2.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.0/js/materialize.min.js"></script>
</head>
<body>
<!--Navbar Materialize -->
<nav>
<div class="nav-wrapper">
<a href="#" class="brand-logo">BaliDev</a>
<ul id="nav-mobile" class="right hide-on-med-and-down">
<li><a href="<?php echo site_url()?>">Upload Gambar</a></li>
</ul>
</div>
</nav>

<!-- semua thumbnail gambar dari database ditampilkan -->
<div class="container">
<div class="row">

<?php
foreach ($gambar as $gmbr) {
echo "<div class='col s3'>";
echo "<div class='card'>";
echo "<div class='card-image'>";
echo img('http://localhost/uploadImage/uploads/'.$gmbr->nama);
echo "</div>";
echo "</div>";
echo "</div>";
}
?>

</div>
</div>
</body>
</html>

Pada sintaks diatas yang perlu kalian pahami adalah pada sintaks foreach dan img nya. Silakan liha bagaimana saya menampilkan gambar tersebut pada url img nya. Untuk tampilannya bisa kalian custom sendiri.
Bagi kalian yang ingin mencoba langsung silakan download dibawah ini:
Download      DownloadDownload

Sekian tutorialnya, semoga bermanfaat buat kalian semua.
Jangan lupa, baca artikel lainnya:

MIUI Tips : Cara Upgrade ROM China ke ROM Global

Selamat malam semua, pada kesempatan kali ini saya akan share tentang cara pindah dari ROM China ke ROM Global. Hal ini terjadi karena pada awalnya saya ingin sekali menikmati MIUI 8 akan tetapi pada saat itu untuk HP saya hanya tersedia ROM China saja. Selang beberapa bulan, ternyata MIUI 8 sudah rilis untuk versi Global. Dan sekarang saya akan pindah ke ROM Global, berikut langkah-langkah yang saya lakukan.

1# Download ROM Global sesuai dengan tipe xiaomi HP kalian di http://en.miui.com/
China to Global ROM

2# Silakan download ROMnya dengan menekan tombol download seperti dibawah ini.
ROM China to ROM Global

3# Silakan download ROMnya sampai selesai, sambil menunggu downloadan selesai kalian bisa backup data HPnya terlebih dahulu. Disini saya menggunakan PC, untuk kalian yang enggak ada PC silakan pindahkan data ke Micro SD ataupun ke Flashdisk dengan USB OTG (On The Go)

4# Pada langkah ini, kita reset dulu HP Xiaominya ini bertujuan supaya ROMnya bersih dan kemungkinan error saat update nanti lebih kecil. Silakan matikan HPnya kemudian tekan volume atas + power untuk masuk ke recovery mode.

5# Pada recovery mode silakan pilih bahasa English terlebih dahulu, Volume atas dan volume bawah untuk pindah dan power untuk apply. Setelah masuk ke MAINMENU silakan pilih wipe&reset > wipe all data. Tunggu hingga proses Wipenya selesai dan kemudian akan reboot.



6# Buatlah folder di internal memori HP xiaomi dengan nama 'downloaded_rom' setelah itu taruh file romnya di dalam folder tersebut.

ROM China to ROM Global

7# Setelah itu, kalian buka aplikasi updater dan tunggu tampilannya agar seperti dibawah ini.

ROM China to ROM Global
8# klik collapse yang ada pojok atas itu, yang saya tandai warna merah. Kemudian pilih Choose update package >pilih folder 'downloaded_rom' > file ROM
ROM China to ROM Global
9# Setelah itu, tunggu proses update sampai selesai. Kalau file tidak ada masalah proses ini memakan waktu sekitar 20 menit. Jadi kalian haru bersabar dan jangan panik.

Sekian tutorial kali ini, semoga bermanfaat bagi kalian yang menggunakan ponsel xiaomi dan ROM MIUI.


Jangan lupa!!!
Baca juga artikel lainnya:

Saturday 22 October 2016

Programmer Tips: yang dilakukan kalau masih newbee

Selamat malam semua, mungkin pada artikel ini judulnya agak sedikit aneh. Namun menurut saya artikel ini penting buat kalian yang mau tekun di dunia programming. Artikel ini saya tulis berdasarkan apa yang telah saya lakukan 6 bulan kebelakang saat saya mulai fokus di dunia pemrogramman, sebelumnya masih ikut-ikutan saja. Jadi, kita disini masih sama-sam newbee (baru). Disini saya bukan bermaksud menggurui tapi sekedar berbagi saja. Jika kalian punya tips yang lain silakan kalian tambahkan di kolom komentar.

Berikut hal yang saya lakukan kalau belajar pemograman:
  1. Memilih bahasa pemograman yang akan dipelajari
  2. Bahasa komputer sama seperti bahasa manusia yang kita gunakan dalam kehidupan sehari-hari namun bahasa kita sehari-hari lebih banyak dan bahasa komputer itu lebih kompleks. Jadi jika kalian mau belajar pemograman pilihlah salah satu misalkan saya memilih basic di bahasa C jadi fokusnya di Pemograman WEB (PHP) dan di Mobile (Java). Bahasa pemograman yang lain juga bagus, akan tetapi pada saat kuliah dari awal saya di ajarkan bahasa C. 
  3. Belajar Algoritma
  4. Semua dosen bilang kalau algoritma itu kunci utama seorang programmer. Saat pertama kuliah dan saya mendapat kuliah algoritma, saya sangat bingung sebenarnya pelajaran ini buat apa. Ternyata saat memulai diberikan projek secara tidak langsung pelajaran algoritma itu berguna sekali. Maka dari itu, jika kita mau belajar programming harus biasakan membuat ES(English Structur), Flowchart dan Pseudocode. Walaupun sampai sekarang pada saat membuat program saya tidak pernah membuat flowchart, tetapi pada saat stuck (pikiran blank) baru membuat flowchart. Mohon ini jangan ditiru yah gan.
  5. Kerjakan tugas yang diberikan
  6. Jangan pernah tidak mengerjakan tugas yang diberikan dosen atapun guru disekolah.Menurut saya, semakin banyak tugas atau projek yang dikerjakan secara tidak langsung algoritma dan skill kalian bertambah. Mulai dari error yang ditemukan dan kalian menjadi terbiasa mencari solusi untuk error tersebut.
  7. Gabung ke Forum
  8. Jika kamu memang serius, cobalah kamu gabung ke forum. Disana kamu akan dapat melihat problem-problem yang dimiliki programmer lain dan bagaimana mengatasinya. Kamu juga bisa bertanya di forum tersebut saat kamu ada problem dengan programmu. Selain itu, kamu juga bisa memberi jawaban kalau memang kamu bisa memberi solusi terhadap masalah program lain.
  9. EXCERCISE
  10. Selain semua di atas itu, latihan untuk membuat program itu sangat penting. Kata dosen saya jika kalian ingin menjadi programmer cukup belajar 2 jam/hari. Walaupun kadang-kadang saya sendiri sulit untuk menerapkannya, tidak ada salahnya kalian menerapkan kata-kata itu. latihan akan membuat kalian menjadi terbiasa buatlah dari hal yang mudah. 

Sekian yang bisa saya sampaikan, cara belajar setiap orang berbeda. Namun, kalian tidak ada salahnya mengikuti cara diatas. Semoga membantu dan terima kasih.

Ala Bisa Karena Terbiasa

Tuesday 18 October 2016

Blogger Tips : Sitemap pada blog dan cara membuatnya

Selamat malam semuanya, update kali ini saya akan share mengenai cara membuat sitemap pada blog kalian masing-masing. Adanya sitemap ini sangatlah penting dalam blog kalian, selain menambah estetika sitemap juga memudahkan visitor untuk mengetahui konten apa saja yang telah kalian posting di blog tersebut.

Berikut langkah-langkah yang saya lakukan untuk menambahkan sitemap di blog saya, menggunakan blogger/blogspot milik google:

1. Buka dashboard blogger kalian masing-masing, tampilannya seperti di bawah inidashboard blogger

2. Buka laman atau dalam bahasa inggris page.
dashboard page
3. Buatlah Laman baru/new page kalian akan diarahkan ke tampilan seperti membuat postingan.
page make post
4. Isilah bagian judul dengan "Sitemap" dan pilih mode penulisan ke HTML dan tambahkan code berikut.




<style>


p.labels a{color: #242424; text-transform: uppercase;font-size: 15px;}

a.post-titles {color: #0000FF;}

//<![CDATA[

ol li{list-style-type:decimal;line-height:25px;}
</style>
<script>

var postTitle=new Array();var postUrl=new Array();var postPublished=new Array();var postDate=new Array();var postLabels=new Array();var postRecent=new Array();var sortBy="titleasc";var tocLoaded=false;var numChars=250;var postFilter="";var numberfeed=0;function bloggersitemap(a){function b(){if("entry" in a.feed){var d=a.feed.entry.length;numberfeed=d;ii=0;for(var h=0;h<d;h++){var n=a.feed.entry[h];var e=n.title.$t;var m=n.published.$t.substring(0,10);var j;for(var g=0;g<n.link.length;g++){if(n.link[g].rel=="alternate"){j=n.link[g].href;break}}var o="";for(var g=0;g<n.link.length;g++){if(n.link[g].rel=="enclosure"){o=n.link[g].href;break}}var c="";if("category" in n){for(var g=0;g<n.category.length;g++){c=n.category[g].term;var f=c.lastIndexOf(";");if(f!=-1){c=c.substring(0,f)}postLabels[ii]=c;postTitle[ii]=e;postDate[ii]=m;postUrl[ii]=j;postPublished[ii]=o;if(h<10){postRecent[ii]=true}else{postRecent[ii]=false}ii=ii+1}}}}}b();sortBy="titleasc";sortPosts(sortBy);sortlabel();tocLoaded=true;displayToc2();document.write('</br><div class="sitemap-link">

<a href="http://helplogger.blogspot.com/2013/12/add-sitemap-table-of-contents-to-blogger.html" style="font-size: 10px; text-decoration:none; color: #5146CD;">Get This Widget</a></div>

')}function filterPosts(a){scroll(0,0);postFilter=a;displayToc(postFilter)}function allPosts(){sortlabel();postFilter="";displayToc(postFilter)}function sortPosts(d){function c(e,g){var f=postTitle[e];postTitle[e]=postTitle[g];postTitle[g]=f;var f=postDate[e];postDate[e]=postDate[g];postDate[g]=f;var f=postUrl[e];postUrl[e]=postUrl[g];postUrl[g]=f;var f=postLabels[e];postLabels[e]=postLabels[g];postLabels[g]=f;var f=postPublished[e];postPublished[e]=postPublished[g];postPublished[g]=f;var f=postRecent[e];postRecent[e]=postRecent[g];postRecent[g]=f}for(var b=0;b<postTitle.length-1;b++){for(var a=b+1;a<postTitle.length;a++){if(d=="titleasc"){if(postTitle[b]>postTitle[a]){c(b,a)}}if(d=="titledesc"){if(postTitle[b]<postTitle[a]){c(b,a)}}if(d=="dateoldest"){if(postDate[b]>postDate[a]){c(b,a)}}if(d=="datenewest"){if(postDate[b]<postDate[a]){c(b,a)}}if(d=="orderlabel"){if(postLabels[b]>postLabels[a]){c(b,a)}}}}}function sortlabel(){sortBy="orderlabel";sortPosts(sortBy);var a=0;var b=0;while(b<postTitle.length){temp1=postLabels[b];firsti=a;do{a=a+1}while(postLabels[a]==temp1);b=a;sortPosts2(firsti,a);if(b>postTitle.length){break}}}function sortPosts2(d,c){function e(f,h){var g=postTitle[f];postTitle[f]=postTitle[h];postTitle[h]=g;var g=postDate[f];postDate[f]=postDate[h];postDate[h]=g;var g=postUrl[f];postUrl[f]=postUrl[h];postUrl[h]=g;var g=postLabels[f];postLabels[f]=postLabels[h];postLabels[h]=g;var g=postPublished[f];postPublished[f]=postPublished[h];postPublished[h]=g;var g=postRecent[f];postRecent[f]=postRecent[h];postRecent[h]=g}for(var b=d;b<c-1;b++){for(var a=b+1;a<c;a++){if(postTitle[b]>postTitle[a]){e(b,a)}}}}function displayToc(a){var l=0;var h="";var e="Post Title";var m="Click to sort by title";var d="Date";var k="Click to sort by date";var c="Category";var j="";if(sortBy=="titleasc"){m+=" (descending)";k+=" (newest first)"}if(sortBy=="titledesc"){m+=" (ascending)";k+=" (newest first)"}if(sortBy=="dateoldest"){m+=" (ascending)";k+=" (newest first)"}if(sortBy=="datenewest"){m+=" (ascending)";k+=" (oldest first)"}if(postFilter!=""){j="Click to view all"}h+="<table>";h+="

<tr>";h+='<td class="header1">';h+='<a href="javascript:toggleTitleSort();" title="'+m+'">'+e+"</a>";h+="</td>";h+='<td class="header2">';h+='<a href="javascript:toggleDateSort();" title="'+k+'">'+d+"</a>";h+="</td>";h+='<td class="header3">';h+='<a href="javascript:allPosts();" title="'+j+'">'+c+"</a>";h+="</td>";h+='<td class="header4">';h+="Read all";h+="</td>";h+="</tr>
";for(var g=0;g<postTitle.length;g++){if(a==""){h+='
<tr><td class="entry1"><a href="'+postUrl[g]+'">'+postTitle[g]+'</a></td><td class="entry2">'+postDate[g]+'</td><td class="entry3">'+postLabels[g]+'</td><td class="entry4"><a href="'+postPublished[g]+'">Read</a></td></tr>
';l++}else{z=postLabels[g].lastIndexOf(a);if(z!=-1){h+='
<tr><td class="entry1"><a href="'+postUrl[g]+'">'+postTitle[g]+'</a></td><td class="entry2">'+postDate[g]+'</td><td class="entry3">'+postLabels[g]+'</td><td class="entry4"><a href="'+postPublished[g]+'">Read</a></td></tr>
';l++}}}h+="</table>
";if(l==postTitle.length){var f='<span class="toc-note">Show All '+postTitle.length+" Posts<br/></span>"}else{var f='<span class="toc-note">Show '+l+" posts by category '";f+=postFilter+"' the "+postTitle.length+" Total Posts<br/></span>"}var b=document.getElementById("toc");b.innerHTML=f+h}function displayToc2(){var a=0;var b=0;while(b<postTitle.length){temp1=postLabels[b];document.write("<p/>");document.write('<p class="labels">
<a href="/search/label/'+temp1+'">'+temp1+"</a></p>
<ol>");firsti=a;do{document.write("
<li>");document.write('<a class="post-titles" href="'+postUrl[a]+'">'+postTitle[a]+"</a>");if(postRecent[a]==true){document.write(' - <strong><span style="color: rgb(255, 0, 0);">New!</span></strong>')}document.write("</li>
");a=a+1}while(postLabels[a]==temp1);b=a;document.write("</ol>


");sortPosts2(firsti,a);if(b>postTitle.length){break}}}function toggleTitleSort(){if(sortBy=="titleasc"){sortBy="titledesc"}else{sortBy="titleasc"}sortPosts(sortBy);displayToc(postFilter)}function toggleDateSort(){if(sortBy=="datenewest"){sortBy="dateoldest"}else{sortBy="datenewest"}sortPosts(sortBy);displayToc(postFilter)}function showToc(){if(tocLoaded){displayToc(postFilter);var a=document.getElementById("toclink")}else{alert("Just wait... TOC is loading")}}function hideToc(){var a=document.getElementById("toc");a.innerHTML="";var b=document.getElementById("toclink");b.innerHTML='<a href="#" onclick="scroll(0,0); showToc(); Effect.toggle(\'toc-result\',\'blind\');">?? Display Table of Contents</a> <img src="http://1.bp.blogspot.com/-_VZwBpHw_SI/UrXvLbFxacI/AAAAAAAAFiQ/ZGqWZUZesCI/s1600/new_icon.gif"/>'}function looptemp2(){for(var a=0;a<numberfeed;a++){document.write("<br>");document.write('Post Link : <a href="'+postUrl[a]+'">'+postTitle[a]+"</a><br>");document.write('Read all : <a href="'+postPublished[a]+'">'+postTitle[a]+"</a><br>");document.write("<br>")}};
//]]>
</script>

<script src="http://balideveloper.blogspot.com/feeds/posts/default?max-results=9999&amp;alt=json-in-script&amp;callback=bloggersitemap"></script>

5. Ganti code bagian terakhir yang berisi http://balideveloper.blogspot.com dengan nama blog kalian masing-masing.
6. Sekarang kalian akan memasukkan link dari page tersebut ke blog kalian agar bisa tinggal klik saja di blog kita. Silakan publishkan dan save. Selanjutnya untuk melihat alamat halaman tersebut, silakan klik lihat.
dashboard page blogger
7. Kalian akan di arahkan ke new tab dan akan keliatan sitemap kalian, punya saya tampilannya seperti dibawah ini.
sitemap balidev
8. Silakan kalian tambahkan urlnya ke halaman blog kalian caranya:

  • Masuk ke dashboard blogger
  • Pilih Template kemudian edit html
dashboard template blogger

9.Tinggal kalian tambahkan letak shortcut untuk menuju ke halamat sitemapnya. Dibawah ini contoh yang saya gunakan.
add sitemap to html

Baik sekian tutorialnya, semoga kalian paham dan saya pun jadi senang. hehehe
Jika ada yang kurang, silakan kalian tambahkan di kolom komentar untuk segera saya update.

Baca juga artikel lainnya:

Monday 17 October 2016

Windows Tips: Penyebab Not Responding dan Cara Mengatasinya

Penyebab windows not respondingSelamat sore semua, disela-sela kesibukan mengikuti kegiatan di kampus saya sempatkan untuk menulis artikel baru lagi karena sudah beberapa hari tidak dapat mengupdate blog lagi karena sibuk dikepanitiaan kampus.

Bagi kalian yang menggunakan sistem operasi windows pasti sering mengalami aplikasi yang not responding. Sebagian orang menyalahkan sistem operasi windows yang terlalu berat, namun semua itu tidaklah benar. Di update windows 10 terbaru, menurut saya Microsoft melakukan sesuatu yang besar terhadap windows 10 itu sendiri.

Baik, disini akan saya paparkan apa sih yang membuat aplikasi sering not responding? simak penjelasan dibawah ini:
  • Menggunakan aplikasi ilegal
  • Ini merupakan hal yang sering dilakukan oleh setiap user, saya tidak menyalahkan user itu sendiri karena memang harga satu buah aplikasi sangatlah mahal. Sehingga sebagian user menempuh cara ilegal untuk bisa menggunakan aplikasi tersebut. Tentu ini akan membuat aplikasi menjadi tidak stabil dan mempengaruhi performance sistem operasimu karena program yang kamu sisipkan ke aplikasi tersebut mencoba mengakses semua filemu sehingga memorimu kehabisan. Cara mengatasinya : belilah aplikasi yang original, coba gunakan versi trial untuk aplikasi yang memang digunakan untuk sementara, dan yang terakhir jangan menyisipkan aplikasi (crack) yang memang memakan banyak memori.
  • Menggunakan sistem operasi yang ilegal
  • Bagi sebagian besar masyarakat, tidak memikirkan bahwa secara tidak langsung mereka menggunakan Sistem Operasi yang ilegal. Dan jika terjadi ketidakstabilan pada PC/Komputernya mereka malah menyalahkan vendor pembuat hardware dan pembuat sistem operasi. Agar mendapatkan yang resmi, selain membeli kalian bisa menempuh cara legal yang bertebaran di internet.
  • Hardware yang memang tidak mencukupi untuk kepentingan
  • Sistem yang sering mengalami not responding tidak hanya dipengaruhi oleh sistem operasi faktor terbesar juga berasal dari spesifikasi hardware yang digunakan. Aplikasi yang not responding terjadi karena memori penuh dan membuat sistem operasi berkerja lebih berat sehingga sistem operasi tersebut menyetop kinerja aplikasi agar tidak merusak hardware. Solusinya: Belilah hardware yang sesuai dengan keperluan kalian agar kinerja lebih optimal, jangan memaksakan untuk membuka aplikasi yang memang berat untuk perangkatmu.
Selain beberapa solusi diatas itu, kalian bisa menyesuakan hardware dengan sistem operasi kalian gunakan. Misalkan kalian menggunakan PC yang speknya dibawah core i3 silakan install windows yang 32 bit agar performancenya lebih bagus.

Sekian artikel ini, semoga bermanfaat buat kalian semua. Yang saya tekankan disini adalah aplikasi yang sering not responding itu bukanlah salah dari windows saja, melainkan dari segi hardware dan aplikasi ilegal yang diinstall. 

Baca juga artikel lainnya:

Friday 14 October 2016

Windows Tips : Hal yang harus dipersiapkan sebelum install ulang

Windows Logo by : BaliDevSiang semua, pada kali ini BaliDev akan share tentang apa saja yang harus kalian persiapkan sebelum kalian install ulang PC/Laptop kalian. Karena install ulang hampir menjadi pekerjaan setiap hari, itu membuat saya kepikiran untuk membuat artikel ini dan beberapa kemungkinan yang akan kalian alami saat install ulang.

  1. Back Up Data
  2. Back up merupakan hal terpenting yang harus kalian lakukan sebelum install ulang PC/Laptop kalian, karena jika kalian kehilangan data penting kalian maka akan berakibat fatal dan membuat kalian pusing tujuh keliling.
  3. Melihat versi PC/Laptop 
  4. Setelah data aman, kalian perlu melihat type laptop kalian untuk mencari driver langkah langkahnya jika type laptopnya tidak tertempel di laptop kalian:
  • Masuk ke dxdiag tekan kombinasi logo windows + r kemudian klik dxdiagdxdiag mode
    • Lihat System Model kemudian kalian cari driver yang sesuai, lihat detail informasinya disana.Berikut informasi laptop saya.dxdiag windows 10
    Diatas itu adalah langkah-langkah identifikasi dan pengamanan data kalian langkah selanjutnya adalah
    1. Tentukan versi windows yang akan kalian install dan carilah driver yang sesuai.
    2. Setelah menentukan windows berapa yang akan kalian install, carilah ketersediaan drivernya terlebih dahulu.Walaupun sekarang ada driver pack, namun sangat tidak saya sarankan memakai driver jika tidak sangat kepepet sekali. Jika sudah mendapatkan driver, sekarang buatlah bootable atau pakai CD terserah kalian.
    3. Lakukan proses installasi
    4. Pada proses ini, kalian harus berhati-hati agar data kalian tidak terformat saat pemilihan partisi yang di install. Saran saya, kalian tidak meninggalkan PC/Laptop kalian pada proses ini.
    5. Install WinRar
    6. Jika proses install sudah selesai, tentunya kalian akan menginstall driver. Langkah pertama install lah software untuk mengekstrak file-file driver karena sebagian besar filenya berbentuk .rar atau .zip
    Mungkin sekian tipsnya, semoga bermanfaat buat kalian semua. Jika ada kekurangan, silakan tambahkan di komentar supaya segera bisa saya perbaiki. Bagi kalian yang merasa info ini bermanfaat silakan follow akun G+ BaliDev.

    Ala Bisa Karena Terbiasa

    Baca juga artikel lainnya:

    Thursday 13 October 2016

    Google Document work everywhere and Everytime

    Google Logo by BaliDevSelamat sore, kali ini saya akan share tentang pengalaman menggunakan google document. Dengan semakin maju perkembangan teknologi rasanya semua teknologi dulu yang masih offline  atau stand alone sudah bisa di akses lewat internet tentu ini akan mempermudah kita sebagai user untuk menyelesaikan pekerjaan dimana saja dan kapan saja. Diawali dengan berbisnis online shop secara tim, saya dengan tim sangat memanfaatkan fitur ini untu pengaksesan secara real time dan setiap anggota bisa mengakses, mulai dari pembuatan sponsor untuk pengajuan dana dan perekapan hasil penjualan dan keuntungan usaha kami. Pokoknya big thanks buat google karena sudah membuat aplikasi ini secara online.

    Google document ini terintegrasi dengan google drive jadi kalian tidak perlu menyimpan atau mendownloadnya.
    Fitur Google DocumentOk, langsung saja apa-apa saja fitur yang disediakan google document ini:

    1. Pengolah kata (Dokumen) : Kalian bisa membuat tugas atau pekerjaan secara online, misalnya membuat CV, Laporan Tugas Akhir dan masih banyak lagi termasuk tugas-tugas di kampus. Tampilannya pun sangat user friendly . Kalian yang sering memakai Microsoft Office Word pasti sangat cepat menyesuaikan menggunakan aplikasi ini.Google Docs
    2. Spreadsheet : Mengatur data penjualan yang harus real update saat selesai COD sangatlah penting menurut saya dan team, agar keuntungan terekap dengan cepat. Maka saya dan team memutuskan untuk memakai spreadsheet untuk mengatur data keungan bisnis yang kami bangun. Semua fitur yang ada di Microsoft Office Excel yang dasar hampir tersedia disini. Sehingga kalian yang memiliki teamwork sangat perlu menggunakan ini menurut saya.Google Spreadsheet
    3. Slide : Seakan membuat kita benar-benar bisa bekerja secara online, dedikasi Google sangatlah luar biasa agar produknya bisa digunakan oleh semua kalangan. Slide ini benar-benar sangat bagus, sangat mirip dengan aplikasi sebelah dan fitur-fiturnya pun tidak kalah. Google menang banyak karena sudah memikat semua user dengan kemudahan produk-produknya.
    Google Slide

    Sebagai orang yang bekerja di dunia IT, kita memang selalu harus update dengan perkembangan teknologi. Namun, jangan sampai mengurangi kreatifitas dan inovasi kalian. Jadikan teknologi untuk menunjang Produktivitas.

    Baca juga artikel lainnya:


    Wednesday 12 October 2016

    MIUI Tips : Yang harus kamu ketahui kalau kamu pengguna xiaomi

    MIUI by BaiDev 2016Selamat sore, sore ini sambil ditemanin kopi yang masih hangat. Sambil menjawab satu per satu pertanyaan teman yang lagi belajar pemrograman, saya menemukan inspirasi untuk membuat artikel tentang memaksimalkan penggunaan MIUI ROM di ponsel xiaomi.

    Singkat cerita saya menggunakan ponsel xiaomi sejak 5 bulan yang lalu, berawal IPhone saya rusak dan tidak bisa membeli lagi karena harganya lumayan tinggi. Maklum sudah gede gak enak lagi minta uang hanya untuk membeli ponsel kepada orang tua. hehe..
    Memang susah untuk migrasi dari IPhone ke Xiaomi, bukan karena apa tapi memang di ponsel IPhone banyak fitur yang usefull yang sangat menunjang pekerjaan saya terutama untuk berjualan dan ngeblog tentunya.
    Baiklah mungkin segitu saja ceritanya, langsung saja saya ceritakan 1 aplikasi yang sangat berguna banget di ponsel xiaomi kamu. Yaitu aplikasi security ada fitur apakah di dalam aplikasi tersebut?
      Security MIUI
    1. Cleaner
    2. Menurut saya, ini sangat berguna sekali. Saat ponsel terasa berat ini menandakan banyak background proses dan cache sudah banyak. Fitur ini akan menghapus semua cache dan mengeluarkan semua aplikasi termasuk yang di background proses. Ini akan membuat ponsel kamu lebih fresh kan?. Daripada menginstall aplikasi pihak ketiga yang akan membuat ponsel menjadi lebih berat dan sering keluar notif iklan, jadi saya sarankan kalian memakai aplikasi default ini.
    3. Restrict Data Usage
    4. Ini nih, fitur yang bagus yang sebelumnya memang sudah ada di IPhone. Fitur ini bisa membuat kamu untuk mengatur aplikasi mana saja yang boleh munggunakan kuota seluler dan yang mana saja menggunakan wifi. Selain itu kamu juga bisa mengatur batas penggunaan data yang memang sudah ada disemua ponsel android saat ini.
    5. Fitur Permissions-> Auto Start
    6. Fitur ini memungkinkan kamu untuk mematikan aplikasi agar tidak bekerja di background proses dan bisa mengatur aplikasi yang memang harus selalu running. Misal kamu ingin agar aplikasi Line tidak di close saat di cleaner, kamu bisa mengaktifkan fitur auto start ini.
    7. Quick Ball
    8. Ini fitur baru yang ada di MIUI 8, sebuah tombol melayang yang berfungsi menggantikan tombol navigasi yang ada dibawah. Saya yang terbiasa dulu memakai IPhone, fitur ini sangat bermanfaat karena bisa mempercepat untuk pindah dari satu aplikasi ke aplikasi lainnya. Untuk mengaktifkan fitur ini di MIUI 8 silakan kamu masuk ke Setting->Additional Settings->Quick Ball kemudian aktifkan dan setting shortcuts sesuai dengan kebutuhan dan selaramu.
    9. Dual apps
    10. Fitur ini semacam mengclone sebuah aplikasi, memang fitur ini tidak asing lagi karena di playstore sudah banyak ada aplikasi yang serupa. Namun, jika tersedia secara default mengapa harus mencari lagi. Fitur ini sangat bermanfaat buat kamu yang memang membutuhkan lebih dari sata account untuk sebuah aplikasi. Misalkan kamu mengclone aplikasi Line, satunya untuk berkomunikasi dengan teman dan yang kamu clone untuk menjalankan bisnis.
    Mungkin sekian yang bisa saya sharing, tanpa melebih-lebihkan dan saya bukan promosi disini. Saya hanya share saja mungkin bisa kamu implementasikan dan sebagai bahan pertimbangan buat kamu yang akan membeli ponsel untuk menunjang produktivitasmu.

    Jangan lupa!!
    Baca juga artikel lainnya:

    Tuesday 11 October 2016

    CodeIgniter : Menampilkan data dari database dan tutorialnya

    Selamat pagi semuanya, pada kali ini saya akan berbagi tentang cara menampilkan data dari database menggunakan framework CodeIgniter. Sebelum lanjut, kalian harus baca dulu artikelnya yaitu Insert Data ke Database dan Tutorial untuk membuatnya. Karena ini menjadi satu paket proyek CRUD dengan yang itu. 
    Menampilkan data dari database itu sangat penting, nanti kita akan membuat laporan kepada pihak owner dengan menampilkan transaksi yang tersimpan didatabase. Selain itu, proses menampilkan data dari database juga sangat penting untuk menampilkan informasi mengenai produk atau jasa yang kita tawarkan agar mudah diakses oleh pengguna website kita.
    Sebelumnya silakan kalian download terlebih dahulu file CRUD lengkap di tombol download di bawah ini:

    Download
    Tampilan yang akan kita buat seperti ini:


    Pertama kita buat terlebih dahulu functionnya di controller untuk memanggil function yang ada di model.
    Buat Siswa.php dan simpan di controllers codenya seperti dibawah ini:


    <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

    class Siswa extends CI_Controller {

    public function __construct()
    {
    parent::__construct();
    $this->load->library('table');
    $this->load->model('msiswa');
    }

    public function index()
    {

    $data['data_siswa'] = $this->msiswa->lihat_siswa();
    $this->load->view('vdaftarsiswa', $data);

    }

    public function form(){
    $this->load->view('vsiswa');
    }

    public function insert(){
    $data = array(
    'id' => $this->input->post('id'),
    'nama' => $this->input->post('nama'),
    'alamat' => $this->input->post('alamat'),
    'kelas' => $this->input->post('kelas')
    );
    $this->msiswa->qinsert($data);
    redirect('siswa/index');
    }

    public function delete(){
    $id = $this->input->get('id');
    $this->msiswa->delete($id);
    redirect('siswa/index');
    }

    public function update(){
    $id = $this->input->get('id');
    $data['data_update'] = $this->msiswa->update($id);
    $this->load->view('veditsiswa', $data);
    }

    public function update_table(){
    $id = $this->input->post('id');
    $nama = $this->input->post('nama');
    $alamat = $this->input->post('alamat');
    $kelas = $this->input->post('kelas');
    $this->msiswa->update_table($id, $nama, $alamat, $kelas);
    redirect('siswa/index');
    }

    }

    /* End of file Siswa.php */
    /* Location: ./application/controllers/Siswa.php */

    Itu saya tampilkan semua function CRUD yang ada di Siswa.php namun yang berfungsi untuk memanggil function yang ada di model hanya 1 yaitu function index.

    public function index()
    {

    $data['data_siswa'] = $this->msiswa->lihat_siswa();
    $this->load->view('vdaftarsiswa', $data);

    }

    $data['data_siswa'] berfungsi menampung nilai dari function lihat_siswa() yang ada model. Yang nanti diteruskan ke ke view.
    Selanjutnya, kalian buat function lihat_siswa() di models->msiswa.php. codenya seperti dibawah ini:

    public function lihat_siswa(){
    $query = $this->db->query("SELECT * FROM siswa");
    return $query -> result();
    }
    Selanjutnya kalian buatkan viewnya nama filenya vdaftarsiswa.php. codenya seperti dibawah ini:

    <?php require('header.php') ?>
    <div class="container">
    <div class="row">
    <div class="col-md-3"></div>
    <div class="col-md-6">
    <div class="table-responsive">
    <?php

    $tabelku = array(
    'table_open' => '<table class="table">',
    'thead_open' => '<thead>',
    'thead_close' => '</thead>',

    'heading_row_start' => '<tr>',
    'heading_row_end' => '</tr>',
    'heading_cell_start' => '<th>',
    'heading_cell_end' => '</th>',

    'tbody_open' => '<tbody>',
    'tbody_close' => '</tbody>',

    'row_start' => '<tr>',
    'row_end' => '</tr>',
    'cell_start' => '<td>',
    'cell_end' => '</td>',

    'row_alt_start' => '<tr>',
    'row_alt_end' => '</tr>',
    'cell_alt_start' => '<td>',
    'cell_alt_end' => '</td>',
    'table_close' => '</table>'
    );

    $this->table->set_heading('#','ID', 'Nama', 'Alamat', 'Kelas');
    $no = 1;
    foreach ($data_siswa as $siswa ) {
    $id = $siswa->id;
    $nama = $siswa->nama;
    $alamat = $siswa->alamat;
    $kelas = $siswa->kelas;

    $this->table->add_row($no, $id, $nama, $alamat, $kelas,anchor('siswa/delete?id='.$id, '<span class="glyphicon glyphicon-remove-sign"></span>', 'id="$id"'), anchor('siswa/update?id='.$id, '<span class="glyphicon glyphicon-pencil"></span>', 'id="$id"'));
    $no++;
    }
    $this->table->set_template($tabelku);
    echo $this->table->generate();
    ?>
    </div>
    </div>
    </div>
    </div>
    <?php require('footer.php'); ?>
    Lihat di sintaks foreachnya $data_siswa merupakan data yang di parse dari model ke controller kemudian ditampilkan di view.

    Kalau dijelaskan mungkin akan penjang lebar dan kalian jadi tambah bingung, saran saya silakan kalian coba saja, kalau ada error mungkin bisa hubungin saya lewat komentar, email, messanger atau yang lain.

    Semoga tutorial ini bermanfaat, kalian bisa mengerti dan saya pun senang, hehehe.
    Ala Bisa Karena Terbiasa

    Baca juga artikel lainnya:

    Hardware Stuff: Kenali gejala kerusakan pada laptop atau komputer

    balidev2016 hardware stuffSelamat malam semua, malam ini sambil ditemani segelas teh hangat untuk sekedar menghangatkan tubuh yang kedinginan dan letih karena sakit dan kesibukan di kampus. Ditambah lagi ada servican laptop mati dan dikejar oleh customer untuk mengerjakan dan untungnya teknisi bisa langsung ngerjain.
    Namun, dari kejadian itu saya mendapat inspirasi untuk menulis artikel baru yang ada sangkutannya sama kerusakan laptop tersebut.
    Sebenarnya kerusakan yang terjadi pada laptop/komputer itu biasanya ditandai dengan timbulnya beberapa gejala yang membuat laptop tidak bekerja seperti biasanya. Berikut gejala-gejalanya dan cara mengatasinya:

    • Baterai cepat habis padahal pemakaian normal
    • Jika gejalanya seperti ini, yang pertama harus kalian lakukan adalah mengecheck background proses pada laptop kalian. Jika kalian memakai sistem operasi windows kalian bisa di task manager. Lihat aplikasi yang bekerja dan paling banyak memakan resource, biasanya itu yang membuat baterai cepat habis. Jika aplikasi normal-normal saja, bisa kalian check bagian casing yang berdekatan dengan baterai laptop. Jika dibagian sana terasa panas, kemungkinan bateraimu mengalami kebocoran dan ini sangat berakibat fatal karena bisa merusak komponen lainnya dan bisa membuat laptop meledak. Solusinya: Selalu gunakan charger yang original, jika laptop memang sudah berumur itu menandakan kamu harus mengganti bateraimu, dan yang terakhir jika baterai tidak panas silakan kalian coba kaliberasi baterainya.
    • Saat dipakai sering mati sendiri
    • contoh laptop yang kotorGejala ini memang paling menyebalkan, bagaimana tidak sedang asyik dipakai bekerja malah mati sendiri dan kamu pun menjadi panik. Solusinya, coba check penggunaan memori pada saat kamu menjalankan aplikasi yang membuat laptopmu mati mendadak, kalau memang sangat penuh kemungkinan itu penyebabnya. Selain itu, harddisk yang bekerja sangat keras dan mengalami overheat akan membuat laptop mati dan hidup kembali. Yang terakhir,  mati sendiri dan tidak bisa dihidupkan kembali. Ini biasanya sudah terjadi kegagalan hardware mulai dari yang termudah diidentifikasi yaitu ic powernya sampai yang paling parah yaitu motherboardnya.
    • Mati sendiri dan berbunyi beep
    • Dengan adanya bunyi beep itu, sebenarnya kita bisa dengan mudah mengidentifikasi komponen mana yang tidak terhubung dengan baik dengan motherboard. Solusinya, kalian dengarkan dan hitung berapa kali beep berbunyi kemudia coba kalian cari kode beepnya, saya sendiri tidak terlalu hafal dengan kode beep, tetapi dengan menghitung dan mencarinya saya jadi tahu komponen mana yang gagal terkoneksi dengan motherboard.
    • Panas berlebih
    • Nah, yang terakhir ini paling sering biasanya diabaikan. Padahal panas berlebih yang tidak seperti biasanya sangat berakibat fatal, bisa merusak motherboard dengan cepat. Jika kalian merasakan gejala ini. Berikut yang harus kalian lakukan : Pertama, kalian check apakah kipas laptop berputar dengan bagus. Jika kipas masih berputar tetapi masih terasa panas sekali, coba kalian bongkar sendiri dan bersihkan komponen yang kotor. Jika kalian tidak bisa saya sarankan untuk ke ahlinya untuk membersihkannya. Saya sendiri bersama teman sering mendapat customer yang membersihkan laptopnya.Mengecheck pasta heatsing sangat disarankan jika kondisinya seperti ini.

    Ok, mungkin hanya sekian yang bisa saya bagi. Semoga semua ini bermanfaat dan bisa menyelesaikan masalah kalian. Untuk kalian yang punya gejala tambahan yang mungkin belum saya sebutkan silakan tambahkan di komentar atau email saya langsung agar bisa segara saya update.

    Jangan lupa !
    Baca artikel lainnya:

    Sunday 9 October 2016

    Android Studio: Membuat Form Login Sederhana dan Tutorialnya

    Selamat pagi, hari ini updatenya pagi-pagi karena sekarang mungkin akan sibuk di kampus dan mungkin juga mencari materi baru untuk update di blog ini. Dalam pembuatan sebuah aplikasi, aplikasi apapun mau berbasis web, desktop ataupun mobile, agar aplikasi kita interaktif dan tidak membebani hanya satu halaman saja maka akan dibuat halaman lain untuk menampung informasi agar tidak berat disatu page saja. Ada juga yang memang harus menggunakan lebih dari satu halaman. Kali ini kita akan mempelajari :
    1. Autentivikasi sederhana menggunakan if, ini sangat sederhana karena belum menggunakan database.
    2. Memanggil activity lain dari activity yang aktif, dalam artian kita akan memanggil halaman lain jika kita memasukkan username dan password yang benar. Ini sangat penting sekali nantinya jika kita membuat aplikasi yang kompleks.
    3. Memparse data dari satu halaman ke halaman lainnya. Nanti jika user berhasil login, maka usernamenya akan terlihat dihalaman selanjutnya.
    Seperti apa nantinya tampilan yang akan kita buat, berikut saya sertakan screenshootnya:


    Seperti itulah nantinya tampilan aplikasi yang kita buat. Untuk penjelasan source codenya kita pelajari sama-sama di bawah ini:
    Di tombol bawah ini saya sertakan link download full codenya dimana kalian tinggal import saja ke android studio.

    Download

    Langkah pertama, buatlah sebuah activity untuk membuat form loginnya. Buatlah layoutnya seperti dibawah ini:

    Jika kalian kesusahan membuat dari Design langsung, buatlah dalam bentuk xml dengan klik text yang ada dikiri bawah pada gambar dan tambahkan sintaks seperti dibawah ini:

    <LinearLayout    xmlns:android="http://schemas.android.com/apk/res/android"    
    xmlns:tools="http://schemas.android.com/tools"    
    android:layout_width="match_parent"    
    android:layout_height="match_parent"    
    android:orientation="horizontal"    
    android:background="@color/flat">

    <EditText android:id="@+id/username"
    android:layout_width="0dp"            
    android:layout_weight="1"        
    android:layout_height="wrap_content"        
    android:hint="@string/username_id"        
    android:layout_gravity="top" />

    <EditText android:id="@+id/password"
    android:layout_weight="1"       
    android:layout_width="0dp"        
    android:layout_height="wrap_content"        
    android:inputType="textPassword"        
    android:hint="@string/password"/>

    <Button        android:layout_width="wrap_content"        
    android:layout_height="wrap_content"        
    android:text="@string/kirim"        
    android:onClick="cobaLogin"/>

    </LinearLayout>

    Penjelasan codenya:
    -EditText itu kita membuat field silakan kalian isi android:id supaya mudah nanti kita identifikasi pada Javanya.
    -Button akan memiliki action, dimana saat button diklik akan ada validasi dari kedua text field yang kita buat. Jika username dan password benar maka akan membuka activity yang lain yang akan kita atur nanti. Yang berfungsi membuatkan action nanti yaitu android:onClick="cobaLogin"

    Diatas kita sudah buat layoutnya, sekarang kita buatkan prosesnya namanya MainActivity.java
    codenya seperti dibawah ini:


    package com.example.maninback.login;

    import android.content.Intent;
    import android.provider.Settings;
    import android.support.v7.app.AlertDialog;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.EditText;

    public class MainActivity extends AppCompatActivity {
    public final static String EXTRA_MESSAGE = "com.example.maninback.MESSAGE";
    @Override protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    }
    /**fungsi ini akan dipanggil saat user menekan tombol login*/
                public void cobaLogin(View view){
    Intent main = new Intent(this, com.example.maninback.login.main.class);
    EditText username = (EditText) findViewById(R.id.username);
    EditText pass = (EditText) findViewById(R.id.password);
    String namauser = username.getText().toString();
    String password = pass.getText().toString();
    if(namauser.equals("admin") && password.equals("admin")){
    main.putExtra(EXTRA_MESSAGE, namauser);
    startActivity(main);
    }
    else{
    AlertDialog gagal = new AlertDialog.Builder(MainActivity.this).create();
    gagal.setTitle("Gagal");
    gagal.setMessage("Pastikan Username dan Password benar");
    gagal.show();
    }
    }
    }
    Untuk penjelasan codengnya:
    -EXTRA_MESSAGE : berfungsi nantinya untuk menampung nilai username yang akan diteruskan ke activity lainnya.
    -Yang menjadi penentu user boleh login atau atau tidak, kalian perhatikan function cobaLogin yang menjadi action button onClick yang tadi kita buat di desainnya.

    Langkah selanjutnya adalah membuat activity empty lagi caranya:


    Klik kanan di app>pilih new>pilih activity> Empty Activity.
    Jika sudah silakan kalian buat layoutnya lagi, kita akan buat seperti dibawah ini:


    Untuk desainnya dalam bentuk xml seperti dibawah ini:


    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    
    xmlns:tools="http://schemas.android.com/tools"    
    android:layout_width="match_parent"    
    android:layout_height="match_parent"   
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.maninback.login.main">

    <TextView android:layout_width="wrap_content"
    android:layout_height="wrap_content"        
    android:textAppearance="?android:attr/textAppearanceLarge"      
     android:text="Selamat Datang"       
     android:id="@+id/textView"      
      android:layout_alignParentTop="true"       
     android:layout_centerHorizontal="true"     
       android:layout_marginTop="121dp" />

    <TextView android:layout_width="wrap_content"
     android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:text="" 
    android:id="@+id/username"
    android:layout_below="@+id/textView"
    android:layout_centerHorizontal="true" />

    <TextView android:layout_width="wrap_content"
    android:layout_height="wrap_content"  
     android:textAppearance="?android:attr/textAppearanceSmall"
     android:text="BaliDev 2016"
     android:id="@+id/textView2"
     android:layout_alignParentBottom="true" 
    android:layout_alignParentStart="true" />

    </RelativeLayout>
    Langkah selanjutnya tinggal kalian atur di file javanya seperti dibawah ini:


    package com.example.maninback.login;

    import android.content.Intent;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.widget.TextView;

    public class main extends AppCompatActivity {

    @Override protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main2);

    Intent tampil = getIntent();
    String user = tampil.getStringExtra(MainActivity.EXTRA_MESSAGE);
    TextView username = (TextView) findViewById(R.id.username);
    username.setText(user);
    }
    }
    Langkah selanjutnya kalian tinggal kalian edit manifestnya dan sesuaikan seperti yang bawah ini, ini cuma optional saja memang kalau salah satu activity tidak tampil saat tombol di klik.


    <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"    package="com.example.maninback.login">

    <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="BaliDev" android:supportsRtl="true" android:theme="@style/AppTheme">
    <activity android:name=".MainActivity">
    <intent-filter>
    <action android:name="android.intent.action.MAIN" />

    <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    </activity>
    <activity android:name=".main"></activity>
    </application>

    </manifest>
    Mungkin sekian tutorial sekarang ini, memang agak panjang dan memusingkan. Saya saat pertama membuat juga seperti itu. Jad saya sarankan kalian download project diatas terus kalian coba import dan run di gadget ataupun diemulator. Setelah kalian paham coba buat sesuai dengan yang kalian inginkan.

    Baca juga artikel lainnya: