Saturday 25 March 2017

Mengapa Banyak Developer Membenci PHP?



Hello World!

Well, sebenarnya masalah ini sudah banyak sekali dibahas dibanyak forum, baik itu di forum-forum programmer seperti stackoverflow sampai grup-grup facebook. Dari yang bisa saya simpulkan kebanyakan developer memang menganggap PHP is a dying language, kuno, dll. Ya saya setuju dengan itu karena jika dibandingkan dengan bahasa lain seperti python atau ruby misalnya, php sudah terlalu outdated.
Berikut ini sudah saya himpun beberapa alasan mengapa banyak developer yang membenci PHP.

Insecure Programming Style.

Sintaks dari PHP mendorong kita untuk dapat memasukan nilai/data secara langsung ke database dan menampilkannya di HTML dengan tanpa pengamanan yang menimbulkan banyaknya peluang untuk sql injection dan cross site scripting attack. Untuk dapat menanggulangi itu semua kita harus cermat dalam mengolah script dan menggunakan beberapa fungsi yang disediakan PHP dengan nama yang terlalu panjang seperti htmlspecialchars() atau myql_real_escape_string().

Terdapat banyak masalah keamanan

Hal ini masih berhubungan dengan masalah yang pertama. Di PHP itu sendiri memang banyak sekali kekurangan  dalam hal keamanan, sehingga banyak membuka peluang yang cukup besar bagi para hacker untuk dapat masuk ke dalam sistem.

Dokumentasinya sangat buruk

Ada beberapa dokumentasi yang kurang jelas bahkan ada juga dokumentasi yang menyarankan sesuatu tapi tetap tidak memberikan solusi. Contohnya saja mengenai cara untuk menghindari cross site scripting attack yang nyatanya malah rentan terkena cross site scripting attack.

Referensi PHP yang tidak masuk akal

Referensi PHP dianggap dapat menyebabkan pola pikir logis kita jadi salah sehingga nantinya akan dapat menghambat dan mempersulit kita dalam mempelajari bahasa lain.

Itulah beberapa hal yang saya garis bawahi mengenai masalah mengapa banyak developer yang membenci PHP. Meskipun demikian bagi saya tetap saja tidak ada salahnya jika ingin memperlajari PHP karena yang salah itu adalah yang tidak belajar sama sekali :D

Friday 24 March 2017

[TUTORIAL] Delete data MySQL dengan Bootstrap Confirm Modal AJAX jQuery



Hello World!

Di postingan kali ini saya akan buat tutorial bagaimana menghapus data dari data base mysql dengan ajax jquery dan bootstrap confirm modal. Di tutorial ini kita membutuhkan file bootstrap, jquery dan bootbox jquery plugin yang harus teman-teman download terlebih dahulu disini.
Setelah selesai didownload, ekstrak dan copy kan di folder project teman-teman.

Oke kita mulai.

Pertama, kita buat sebuah database terlebih dahulu dengan nama ajax-jquery-php lalu membuat table tbl_product.

CREATE TABLE IF NOT EXISTS `tbl_products` (
  `product_id` int(11) NOT NULL AUTO_INCREMENT,
  `product_name` varchar(35) NOT NULL,
  PRIMARY KEY (`product_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;

Selanjutnya kita dumping data ke table tersebut. copy sql berikut

INSERT INTO `tbl_products` (`product_id`, `product_name`) VALUES
(1, 'Galaxy Jmax'),
(2, 'Killer Note5'),
(3, 'Asus ZenFone2'),
(4, 'Moto Xplay'),
(5, 'Lenovo Vibe k5 Plus'),
(6, 'Redme Note 3'),
(7, 'LeEco Le 2'),
(8, 'Apple iPhone 6S Plus');

Setelah itu sebuah file php dengan nama dbconfig.php untuk konfigurasi database.

<?php
	
	$DBhost = "localhost";
	$DBuser = "root";
	$DBpass = "";
	$DBname = "ajax-jquery-php";
	
	try{
		
		$DBcon = new PDO("mysql:host=$DBhost;dbname=$DBname",$DBuser,$DBpass);
		$DBcon->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
		
	}catch(PDOException $ex){
		
		die($ex->getMessage());
	}

Langkah selanjutnya adalah membuat sebuah file dengan nama index.php yang didalamnya berisi kode untuk menampilkan daftar data yang ada di database. Isinya seperti berikut :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Delete Data MySQL dengan BootStrap Confirm Modal


</head>
<body>

    
<tr> <th>#ID</th> <th>Product Name</th> <th>Action</th> </tr> <?php require_once 'dbconfig.php'; $query = "SELECT product_id, product_name FROM tbl_products"; $stmt = $DBcon->prepare( $query ); $stmt->execute(); while ($row=$stmt->fetch(PDO::FETCH_ASSOC) ) { extract($row); ?> <?php } ?>
<?php echo $product_id; ?> <?php echo $product_name; ?>
</body> </html>

Lalu masukan kode ajax jquery berikut tepat diatas tag </body>










Buat sebuah file lagi dengan nama delete.php yang berguna sebagai target dari ajax.
<?php

	require_once 'dbconfig.php';
	
	if ($_REQUEST['delete']) {
		
		$pid = $_REQUEST['delete'];
		$query = "DELETE FROM tbl_products WHERE product_id=:pid";
		$stmt = $DBcon->prepare( $query );
		$stmt->execute(array(':pid'=>$pid));
		
		if ($stmt) {
			echo "Product Deleted Successfully ...";
		}
		
	}

Setelah itu silakan di tes dan Viola Done!
Jika ada error atau pertanyaan silakan tinggalkan komentar atau download projectnya disini

[TUTORIAL] Cara install Laravel di Windows dan Linux



Hello World!
Kali ini saya akan coba buat sebuah tutorial bagaimana cara instalasi framework laravel di windows dan di linux ubuntu.

Oke kita mulai.

Instalasi pada Windows

Instalasi laravel di windows bisa dibilang cukup mudah jika dibandingkan dengan instalasi di distro linux seperti ubuntu. Sebelum mulai install laravel pastikan teman-teman sudah mengaktifkan ekstensi openssl di php.ini karena laravel menggunakan ekstensi ini dalam mode CLI. Cara mengaktifkannya cukup mudah yaitu tinggal buka file php.ini (biasanya di xampp/php) lalu hilangkan tanda ';' yang ada didepannya. Jika hal ini tidak dilakukan akan ada error seperti ini :

Some settings on your machine make composer unable to work properly bla..bla..bla.

Langkah selanjutnya adalah mengintal composer yang merupakan sebuah dependency manager PHP. Cara installnya cukup mudah yaitu dengan mendownload composer-setup.exe disini lalu install seperti biasa.

Langkah selanjutnya adalah mengecek apakah composer sudah berhasil diinstall atau belum dengan cara mengetik command ini di cmd :

composer

Jika muncul tampilan seperti dibawah ini artinya composer sudah berhasil diinstall.



Tahap selanjutnya adalah menginstall laravel. Caranya adalah masuk ke root folder teman-teman (htdocs/localhost) lalu ketik command berikut di cmd :

composer create-project laravel/laravel nama-proyek --prefer-dist

Nama proyeknya silakan diganti sesuai kebutuhan teman teman. Secara default instalasi dari composer seperti ini akan menginstall laravel versi paling baru. Jika teman-teman ingin mengintall versi spesifik dari laravel ketik command berikut di cmd :

composer create-project laravel/laravel nama-proyek "5.2.*" --prefer-dist

Versinya bisa diganti sesuai kebutuhan. Contoh diatas adalah untuk menginstall versi 5.2

Viola Done! Laravel berhasi diinstall.

Intalasi Pada Linux Ubuntu

Untuk instalasi pada ubuntu, saya masih menggunakan XAMPP sebagai paket web server dan databasenya. Secara default root foldernya akan berada di /opt/lampp.

Langkah pertama yang harus dilakukan adalah membuat PHP terdeteksi di sistem linux. Jika PHP sudah terdeteksi dan berjalan di sistem teman-teman silakan lewati langkah ini. Ketik di terminal :

$ sudo update-alternatives --install "/usr/bin/php" "php" "opt/lampp/bin/php" 1

Langkah selanjutnya adalah menginstall composer :

$ curl -ksS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer

Langkah selanjutnya sama seperti pada windows yaitu mengintall project laravel di root folder teman-teman dengan cara :

composer create-project laravel/laravel nama-proyek --prefer-dist

Dan seperti biasa nama proyek bisa diganti sesuai kebutuhan. Jika proses instalasi/downloading file selesai. Langkah selanjutnya adalah mengubah permisi direktori storage di terminal :

chmod 777 -R nama-proyek/app/storage


Untuk mengeceknya baik di windows ataupun di linux, teman-teman tinggal mengetik alamat/url (localhost/laravel/public)proyek laravelnya di browser. Jika berhasi akan muncul tampilan seperti ini.



Jika sudah muncul tampilan seperti diatas, artinya laravel sudah terinstall dan siap digunakan.

Alasan Mengapa banyak PHP Developer Memilih Laravel



Hello World!
Dipostingan kali ini saya akan sedikit membahas kelebihan-kelebihan dari framework Laravel sebagai gambaran yang bisa dijadikan pilihan tepat ketika teman-teman baru mulai belajar framework.
Bagi yang belum tahu apa itu Laravel, well sederhana nya Laravel itu merupakan sebuah framework (kerangka kerja) dari PHP. Lalu apa itu framework? yup framework itu bisa dikatakan sebagai kumpulan dari class atau fungsi-fungsi yang sudah tersedia dan siap dipakai sehingga ketika pembuatan sebuah sistem kita tidak dituntut untuk membuat semuanya dari nol, tapi kita bisa memanfaatkan fungsi-fungsi yang sudah disediakan.
Ada banyak sekali framework PHP saat ini, namun dari beberapa situs forum developer banyak yang menyebutkan framework Laravel ini sebagai The Best PHP Framework untuk saat ini. Lalu kenapa bisa demikian? disini saya sudah membuat list tentang beberapa kelebihan dari Laravel yang pastinya bisa mempermudah dan meningkatkan kualitas sistem/aplikasi yang sedang dikembangkan.

Dokumentasi yang baik

Yup, ini merupakan alasan pertama mengapa banyak developer memilih Laravel. Dokumentasi yang disediakan Taylor Otwell (Pembuat Laravel) selalu tersedia dengan jelas dan mudah dipahami. Selain itu Taylor juga tidak pernah me-release versi terbaru Laravel tanpa adanya dokumentasi yang jelas.
Selain itu kalau teman-teman perhatikan lebih dalam, coding style yang digunakan dalam dokumentasinya selalu konsisten dan detail.

Migration

Migration merupakan kode representasi dari schema database kita. Fitur ini merupakan salah satu fitur favorit saya karena ketika bekerja dengan tim, kita tidak diharuskan untuk berbagi file sql secara manual untuk konfigurasi database. Cukup dengan migrate database-nya dan beres.

Database Seeding

Selain migration, ada juga database seeding. Fitur ini membuat kita tidak perlu repot-repot membuat dummy data secara manual melainkan kita bisa membuatnya dengan mudah dengan bantuan Faker Library

Eloquent
Eloquent merupakan syntax yang digunakan untuk memproses query database. Dan sejauh ini Eloquent laravel masih menjadi ORM yang terbaik buat saya karena sintaksnya yang rapih dan mudah dipahami.

Blade

Blade merupakan sistem templating yang digunakan laravel. Dengan menggunakan blade, membuat dokument HTML menjadi jauh lebih simple dan rapih

Elixir

Elixir merupakan gulp wrapper yang digunakan untuk menjalankan tugas-tugas secara otomatis. Contohnya seperti compiling SASS/LESS, manifyin script/css dan menjalankan PHPUnit test dapat dijalankan secara otomatis jika menggunakan elixir.

Laracast

Jika teman-teman baru mulai belajar laravel, ada baiknya untuk mengunjugi situs laracast racikan Jeffrey Way yang berisi kumpulan video tutorial laravel dari beginner sampai pro. Selain video tutorial, di laracast juga tersedia sebuah forum yang membahas seputar laravel. Jadi kalau teman-teman punya pertanyaan, teman-teman bisa menanyakannya disana.

Auth

Alasan selanjutnya mengapa banyak php developer memilih laravel adalah adanya auth atau athentication yang sudah diimplementasikan otomatis di laravel, sehingga kita tidak perlu susah payah membuatnya dari awal.


Pagination

Fitur ini sangat membantu karena kita tidak perlu membuat pagination secara manual, tapi dengan adanya fitur ini kita bisa membuat pagination data dari database kita secara mudah.

Validation/Request

Kelas validasi yang disediakan oleh laravel sangat simple dan mudah dipahami

Artisan CLI

Command Line Interface tools yang sangat powerfull dari laravel. Dengan adanya artisan ini kita bisa membuat beberpa file seperti controller, model, dll dengan cepat dan otomatis. Dan banyak lagi fungsi dari artisan cli ini.

Dependency Injection

Terdapat dependency injection yang tertanam di laravel membuat Unit testing menjadi mudah.

Forge

Merupakan satu tools yang juga dikembangkan Taylor Otwell untuk mempermudah deploying laravel apps

Directory Structure

Struktur default dari laravel sangat baik dan dalam beberapa kasus yang rumit sekalipun kita tidak perlu untuk merubahnya.


Itulah list dari kelebihan-kelebihan yang ditawarkan oleh laravel yang saya sendiri sudah merasakan manfaatnya. Bagi teman-teman yang baru mau belajar framework saya sarankan untuk mencoba belajar laravel karena selain terdapat banyak kelebihan, juga sintaks penulisannya pun sangat baik bahkan bisa dibilang seperti gabungan dari .net dan RoR.

[TUTORIAL] Menampilkan Data dari Database dengan AJAX jQuery




Hello World!
Melanjutkan postingan saya yang kemarin tentang  bagaimana cara submit data dari form dengan ajax, hari ini kita bakal coba buat menampilkan data yang sudah disubmit kemarin untuk ditampilkan pada sebuah modal bootstrap.
Karena tutorial ini merupakan lanjutan tutorial sebelumnya, maka kita tidak perlu membuat database dan table lagi, jadi cukup pakai database yang sama dengan project sebelumnya.

Oke kita mulai.

Pertama, kita buka lagi project yang kemarin dan buat sebuah file dengan nama view.php dan isi kan source code berikut :

<!DOCTYPE html>
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	Bootstrap Modal with Dynamic MySQL Data using Ajax & PHP
	
</head>
<body>

<?php $dbhost = 'localhost'; $dbuser = 'root'; $dbpass = ''; $dbname = 'ajax-jquery-php'; $conn = new mysqli($dbhost, $dbuser, $dbpass, $dbname); if($conn->connect_error){ die('Connection Error :'.$conn->connect_error); } $sql = "SELECT * FROM biodata"; $data = $conn->query($sql); while($row = $data->fetch_array()){ ?> <?php } ?>
Full Name View Profile
</body> </html>

Selanjutnya tepat diatas tag </body> masukan script ajax berikut :





Setelah itu buat sebuah file php sebagai target dari ajax, beri nama submit2.php lalu masukan kode berikut :

<?php 

if(isset($_POST['id'])){

		$id = $_POST['id'];

		$link = mysqli_connect("localhost", "root", "", "ajax-jquery-php");
		 
		// jalankan query
		$sql = "SELECT * FROM biodata WHERE id = '$id'";
		$result = mysqli_query($link, $sql);

		$row = mysqli_fetch_array($result, MYSQLI_ASSOC);

		echo json_encode($row);
		exit;
}

 ?>

Di file tersebut data akan dikirimkan dalam bentuk json.
Setelah semua kode ditulis selanjutnya dicoba. viola done!

Jika ada yang kurang jelas silakan tinggalkan komentar atau unduh project nya disini

Thursday 23 March 2017

[TUTORIAL] Submit Form PHP, MySQL, Bootstrap Tanpa Refresh dengan AJAX jQuery



Hello World!
Hari ini saya mau coba sedikit share tutorial / source code buat latihan bagaimana cara submit form PHP, MySQL, Bootstrap dengan AJAX jQuery. Submit form dengan menggunakan AJAX tentunya memiliki banyak keuntungan. Selain membuat data terkirim secara asyncronous di balik layar, tentunya juga membuat user merasa lebih nyaman karena prosesnya menjadi lebih cepat.

Baik kita mulai saja.

Pertama, download dulu file yang dibutuhkan seperti bootstrap dan jquery.
lalu buat sebuah database dengan nama bebas dan buat sebuah table biodata
CREATE TABLE `biodata` (
  `id` int(11) NOT NULL,
  `fname` varchar(25) NOT NULL,
  `lname` varchar(25) NOT NULL,
  `email` varchar(50) NOT NULL,
  `phone` varchar(12) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Selanjutnya dumping data berikut
INSERT INTO `biodata` (`id`, `fname`, `lname`, `email`, `phone`) VALUES
(1, 'Azhari', 'Marzan', 'azhari@marzan.com', '2147483647'),
(2, 'Pevita', 'Pearce', 'pevpearce@gmail.com', '2147483647'),
(3, 'Rangsang', 'Kumuda', 'sangkumuda@gmail.com', '2147483647'),
(4, 'Raden', 'Kudamerta', 'kudamerta@gmail.com', '2147483647'),
(5, 'Raden', 'Cakradara', 'cakradara@gmail.com', '2147483647'),
(6, 'Monkey D', 'Luffy', 'luffy@mugiwara.com', '2147483647'),
(7, 'Lembu', 'Anabrang', 'lembuanabrang@gmail.com', '2147483647'),
(8, 'Wirota', 'Wiragati', 'wirowira@gmail.com', '2147483647'),
(9, 'Wiro', 'Sableng', 'sableng@gmail.com', '2147483647'),
(10, 'Ebiet ', 'Kaka', 'ebiet@gmail.com', '2147483647'),
(11, 'God', 'Usopp', 'usop@gmail.com', '2147483647'),
(12, 'Tony', 'Chopper', 'chopper@gmail.com', '2147483647'),
(13, 'Hello', 'There', 'hi@there.com', '085674837456'),
(14, 'Nico', 'Robin', 'nirobin@mugiwara.com', '085674837465'),
(15, 'lklkdalk', 'lkldkgnalkn', 'knlkgnaln', 'lnalgknlg'),
(16, 'aklkalg', 'lnalgna', 'lnadlganlnl', 'lknalglakgd'),
(18, 'Johnathan', 'Saputra', 'saputra@gmail.com', '087762536478'),
(19, 'lakdglk', 'lkndlkasl', 'lkandsdlkan', 'lkadsnlkbal'),
(20, 'dsgasd', 'adgag', 'adgadg', 'adgasd'),
(21, 'dgasdg', 'dgasdga', 'dgagag', 'adgad'),
(22, 'dasgsd', 'dagdasgdg', 'adgdag', 'adgasdgsdgd'),
(23, 'dasgsdgsa', 'adgadga', 'adgag', 'adgadggga');

Setelah itu buka text editor teman-teman lalu buat sebuah file dengan nama index.php
didalamnya buat code seperti berikut:

<!DOCTYPE html>
<html>
<head>
 
 
 Submit PHP Forms Without Refresh Using jQuery and AJAX
 
 
</head>
<body>




</body>
</html>

Lalu diatas tag </body> masukan kode berikut :





Kode diatas merupakan script ajax jquery yang dipakai untuk mensubmit data.


Selanjutnya buat lagi sebuah file untuk targetnya. Beri nama filenya submit.php

<?php

 $dbhost = 'localhost';
 $dbuser = 'root';
 $dbpass = '';
 $dbname = 'ajax-jquery-php';


 $conn = new mysqli($dbhost, $dbuser, $dbpass, $dbname);

 if($conn->connect_error){
  die('Connection Error :'.$conn->connect_error);
 }
 
if($_POST){
 $fname = $_POST['txt_fname'];
 $lname = $_POST['txt_lname'];
 $email = $_POST['txt_email'];
 $phno = $_POST['txt_contact'];


 $sql = "INSERT INTO biodata (fname, lname, email, phone) VALUES('$fname', '$lname', '$email','$phno')";

 if($conn->query($sql)){

  ?>
  
Data Submitted Successfully
<?php }else{ ?>
Failed Submit Data
<?php } } $conn->close(); ?> ?>

Viola Done!
Kalau teman-teman merasa kebingungan silakan download projectnya disini

10 Tren Web Development di Tahun 2017



Hello World!
So this is basically my first post :) dan mungkin topik yang bakal cocok buat dibahas di pos pertama yaitu seputar hal yang ringan-ringan terlebih dahulu.
Ngomongin masalah tren teknologi emang gak bakal ada habisnya, apalagi emang zaman-zaman sekarang itu yang namanya teknologi bener-bener udah gila banget perkembangannya. Kadang terlalu pesatnya perkembangan teknologi itu emang bikin orang-orang yang mau mulai berkecimpung di dunia teknologi (kayak saya) jadi agak bingung harus mulai dari mana atau mungkin teknologi apa yang bakal worth it buat dipelajari.
Saya gak bakal bahas tren teknologi secara umum tapi bakal lebih spesifik ke ranah teknologi web karena emang saya sendiri lagi belajar web dan juga kayaknya teknologi web emang bener-bener pesat banget perkembangannya.
Oke langusung aja disini saya udah buat daftar 10 hal yang menjadi tren web development di tahun 2017.

Responsive Design

Responsive design ini emang sudah sangat jelas makanya ada di nomor pertama. Tapi kalo belum 'ngeh' kenapa alasannya yaitu karena access website di tahun 2017 ini gak cuma dari komputer/laptop aja, tapi dari banyak device semisal smartphone, tablet atau bahkan smartwatch. Nah, karena itu web yang dikembangin responsive atau bisa menyesuaikan tampilannya tergantung device yang dipakai itu bakal tetep jadi tren di tahun 2017 ini.

Real Time Notification

Real time notification awalnya emang dibuat cuma untuk aplikasi chat aja, namun di tahun 2017 ini hal-hal seperti laporan-laporan pemberitahuan yang ada di sebuah dashboard harus sudah harus mendukung real time notification. Hal tersebut penting untuk mempercepatnya proses pengambilan keputusan bagi si user.
Real time notification juga mungkin tidak dibutuhkan dibeberapa situasi, namun sangat dibutuhkan dibeberapa hal lainnya.

Modular Design

Ada banyak framework dan library baik itu disisi frontend mau pun backend yang berkembang di tahun 2017. Penggunaan framework dan library dalam pembuatan dan pengembangan web ini membuatnya menjadi lebih flexible dan lebih rapih, terlebih jika dikembangkan oleh beberapa orang.
Tren development di tahun 2017 ini mengacu pada pengembangan pola MVC (Model View Controller) baik disisi frotend dan backend. Banyak framework dan library yang bisa digunakan seperti Laravel, Django, RoR, AngularJs, React Js dll.

Live Support

Banyak web-web bisnis professional yang sudah mulai meninggalkan interaksi dengan customer dengan cara email. Selain memang lebih lambat komunikasi dengan email juga tidak efektif karena pastinya akan menjadi komukasi yang formal. Nah, untuk itulah live support hadir sebagai pembaharu yang membuat komukasi jadi lebih efektif dan efisien.

Single Page Application Design

Contoh teknologi dibalik single page application design adalah AJAX (Asyncronous Javascript and XML). Hal ini penting karena dengan adanya teknologi ini, si user tidak perlu membuat website reload terlebih dahulu karena semua hal dapat dilakukan di halaman yang sama.

Browser Based IDE's

Teknologi IDE memang masih lebih banyak ada di ranah desktop, namun di tahun 2017 ini teknologi semacam ini akan pesat berkembang. Saya sendiri sudah banyak menemukan banyak Cloud IDE yang ringan dan cukup powerfull.

Browser Based Caching

Website yang bagus itu memang yang banyak berisi konten-konten multimedia sehingga designnya terlihat bagus dan elegan. Namun disisi lain memang hal tersebut membuat web menjadi lebih lambat untuk dimuat. Nah itu lah mengapa penggunaan cache masih diperlukan di 2017 ini agar mengurangi dampak lambatnya loading website.

HTML Compression

Hal ini masih berhubungan dengan poin sebelumnya namun saya buat terpisah karena memang belum dibahas secara luas karena faktanya banyak web developer yang masih mencari opsi terbaik untuk HTML compression library ini.

Version Control

Yes, version control - Git.
Mungkin sudah banyak yang familiar dengan git. Dan penggunaan git version control ini sangat amat diperlukan dalam pengembangan web di tahun 2017 ini. Ada beberapa pilihan aplikasi yang bisa digunakan seperti github, bitbucket, mercurial dan subversion.

Material Design

Last but not least.
Ada material design yang lagi booming beberapa tahun terakhir dan pastinya masih akan booming di tahun 2017 ini.

Itulah beberapa hal yang saya pikir akan menjadi tren pengembangan web di tahun 2017 ini. So be a good developer!