Just my scratch

Friday, 24 March 2017

Install Unity3D di Ubuntu

09:19:00 Posted by Unknown 3 comments

Selamat malam temen-temen mungkin dari kalian ada yang sangat suka sekali ngedevelop game ataupun buat kalian yang masih berencana mau ngedevelop game, ada kabar gembira yang sebenernya sudah sangat lama yaitu, Unity3D sedang dikembangkan untuk platform Linux dan dalam versi beta. Untuk kalian yang sudah mengenal unity tentunya kalian tidak asing denagn tools ini, namun  buat kalian yang belum mengetahuinya maka saya kasih tau sedikit saja mengenai Unity3D ini, Unity3D adalah salah satu dari sekian banyak game engine yang ada diaman dengan menggunkan game engine kita bisa lebih mempercepat proses pembutan game.

yang pertama yang sangat penting adalah mendownload Unity3D untuk untuk Ubuntu, kalian bisa mendownloadnya di download Unity3D scroll ke bagian paling bawah untuk mendaptkan versi paling baru saat saya menulis blog ini versi nya adalah 5.6.0Of1. brikutnya yang diperlukan sebelum mnginstall Unitynya adalah dengan mnginstall semua library yang diperlukan, buka terminal atau dengan mnggunakan shortcut ctrl+alt+t kemudian pastekan perintah berikut ini
sudo apt-get install -y libunwind8 libcurl3 wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu52_52.1-8ubuntu0.2_amd64.deb sudo dpkg -i libicu52_52.1-8ubuntu0.2_amd64.deb
jikasudah langkah  berikutnya adlah mnginstal .NET frmework untuk Ubuntu kalian bisa melihatnya di website .NET core dan pilih platformnya hanya sampai tahap instalasi saja. Jika sudah langkah terakhir adalah menginstal semua paket dependensi untuk monodevelop pada terminal ketikan perintah berikut ini
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF echo "deb http://download.mono-project.com/repo/debian alpha main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list sudo apt-get update sudo apt-get install mono-devel mono-complete ca-certificates-mono mono-xsp4
sudo apt-get install monodevelop
jika sudah langkah terakhir adalah menginstall package debian unity itu sendiri dengan software installer maupun dengan dengan menggunakan dpkg hasilnya sama saja setelah itu masuk ke unity dan lakukan testing untuk menjalankan game dengan mendownload asset di assetstore ubuntu disini saya melakukan testing dengan menggunkan asset space shooter demikian tutorial hari ini jika kurang jelas kalian bisa lihat video dibawah ini, maaf jika blog dan video kurang jelas penjelasannya.

Link download Unity3D dan cara Install .NET core
  1. Download Unity
  2. Microsoft .NET core website 

Sunday, 11 December 2016

Hari 3 : Membuat model dengan Scaffold Generator

21:12:00 Posted by Unknown No comments

          Ok, kembali lagi ke rails tutorial pada hari sebelumnya kita sudah belajar tentang bagaimana membuat aplikasi hello world di Rails. Pada tutorial hari ini kita bakalan belajar untuk membuat sebuah aplikasi yang akan melakukan show off dari hebatnya Rails salah satunya adalah dengan menggunakan scaffold generators dimana dengan menggunakan scaffold kita bisa menggenerate fungsi secara otomatis. Pada tutorial kali ini aplikasi tutorial yang akan kita buat akan bersisi data user daimana pada setiap user akan memiliki lebih dari satu micropost. tahap yang perlu dilakukan sama seperti tahap pembuatan aplikasi hello world ok langsung saja kita mualai genrate aplikasinya disni nama aplikasinya yang saya pake adalah Hello_scaffold dengan konfigurasi gem file sebagai berikut dan kemudian install bundler without production
konfigurasi gemfile untuk aplikasi Hello_scaffold
setelah itu genertae aplikasi di heroku dan ubah aplikasi supaya menampilkan kata hello world dan lakukan deploy ingat tidak ada kata  "terlalu dini untuk melakukan deploy" jika sudah kita akan memodelkan tabel user sepert ini 
  1. id : integer
  2. name : string
  3. email : string
kemudian kita akan memodelkan tabel data untuk micropost seperti ini 
  1. id : integer
  2. content : text
  3. user_id : integer
ok jika sudah kalian pahami, sekarang saatnya melakukan generate model dengan menggunakan scaffold berikut ini adalah aturan menuliskan commandnya 
rails generate scaffold nama_tabel_atau_model atribut_1:tipedata_1 atribut_2:tipedata_2 atribut_3:tipedata_3 ... atribut_n:tipedata_n
jika sudah paham sekrang yang perlu kalian lakukan adalah melakukan generate model tersebut berikut ini commandnya jika kalian bingung dengan penjelasan diatas.
rails generate scaffold User name:string email:string 
jika command tersebut berhasil akan mengoutputkan seperti ini 

Output generate scaffold
dengan menggunakan scaffold ketika kalian membuat tabel user kalian tidak perlu menuliskan command id yang natinya sebagai primary key karena sudah digenerate secara otomatis oleh scaffold ini, setelah berhasil menggenerate user yang perlu kalian lakukan adalah melakukan migrate database yang tujuannya adalah untuk mengupdate model ke database dengan menggunakan command .
rails db:migrate
sebelum melanjutkan tutorial ini saya akan membahas tentang rake, ketika kita menuliskan commnad db:migrate, command ini sebenarnya menggunakan rake, and then pasti kepikiran apa itu rake berikut ini adalah penjelasan panjanganya.


          Pada sistem Unix, make utility merupakan command penting pada pembuatan executeable program dari source code. Disni Ruby mencoba mengaplikasikan hal tersebut pada rakerake sebenarnya singkatan dari Ruby make.Sebelum adanya Rails 5, Ruby on rails menggunakan rake secara luas. dua command yang paling sering digunakan yang didalamnya yang menggunakan rake adalah rake db:migrate (digunakan untuk mengupdate database dengan model) dan rake test(untuk melakukan test suite secara otomatis). OK cukup sudah sedikit ceritanya, lanjut ke tutorialnya.

         Jika kalian sudah berhasil membuat model user sekarang saatnya adalah melakukan explorasi dari running commad tersebut, nyalakan rails server terlebih dahulu dan masuk ke local host dengan tambahan /users maka kalian akan menemukan page seperti ini.

Hasil generate scaffold
jika kalian sudah berhasil cobalah untuk menambahakn user baru melalui page tersebut dan hasilnya akan sepreti berikut ini.

Menambahkan user

ketika membuat model menggunakan rails secara otomatis Rails akan menggnerate juga fungsi CRUD(create, read, update, dan delete) untuk model yang kita buat, cobalah untuk melakukan sedikit explore fungsi-fungsi tersebut sendiri.

MVC in Action

        Ok, sebelumnya kita sudah belajar cara untuk membuat model user, sekarang adalah saatnya untuk membahas bagaimana mvc tersebut bekerja, berikut ini adalah diagramnya.

Berikut ini adalah alurnya
  1. ketika kita membuka browser dan merequest halaman /user
  2. Rails router akan mengarahkan request ke index action yang berada pada class User controller
  3. Index action tersebut akan meminta User model untuk mengambil semua data user (User.all)
  4. kemudian user model akan melakukan pull semua data user dari database.
  5. user model akan mereturn semua list user ke controller.
  6. kemudian controller akan mengcapture user dengan menggunakan variabel @user, yang natinya akan di pass ke index view.
  7. kemudian view akan meminta Ruby untuk merender page sebagai HTML
  8. controller akan melakukan pass HTML kembali ke browser
jika kalian sudah paham sekarang adalah saatnya untuk mengubah main page aplikasi yang kita buat.Yang sebelumnya hanya menapilkan hello world diubah untuk menampilkan page user, cara mengubahnya dalah pada bagian routernya yaitu routes.rb
Mengubah main page untuk menampilkan data user
jika kalian sudah ubah seperti screenshot diatas cobalah untuk membuka localhost:3000 maka akan menampilkan list user yang ada, pertanyaan kalian "kok bisa? kan saya belum membuat apa-apa di controller user".Ok, berikut ini penjelasannya, pada Rails controller akan dibuat secara otomatis ketika kita membuat sebuah model dengan menggunakan scaffold, yang perlu kalian ingat disini adalah UserController , adalah class yang merupakan class turunan(inheritance) dari class ApplicationController jika kalian buka class user_controller.rb maka detail isi class tersebut adalah sebagai berikut
class UsersController < ApplicationController
  .
  .
  .
  def index
    .
    .
    .
  end

  def show
    .
    .
    .
  end

  def new
    .
    .
    .
  end

  def edit
    .
    .
    .
  end

  def create
    .
    .
    .
  end

  def update
    .
    .
    .
  end

  def destroy
    .
    .
    .
  end
end
jika kalian perhatikan class tersebut dengan baik, maka class tersebut bersisi method: index,show, new, edit, create, update dan destroy yang tadi sempat kita lihat di page-page user yang merupakan hasil generate, dan kerennya dengan menggunakan Rails action-action yang ada di page tersebut tidak melakukan render page meskipun sebenarnya bisa. Controller tersebut sebenarnya merepresntasikan implementasi dari Representational State Transfer pada Rails atau yang dikenal dengan nama REST, buat kalian yang belum paham mengenai REST berikut ini adalah penjelasannya.

          REST sperti yang sudah disebutkan sebelumnya merupakan singkatan dari REpresentational State Transfer, dimana REST ini merupakan sebuah arsitektur untuk sistem terdistribusi seperti World Wide Web(WWW) dan aplikasi web, jika membahas mengenai REST secara teori hal tersebut sangat abstrak jadi yang akan dibahas adalah implemntasi REST pada Rails saja. Pada Rails, REST merupakan komponen aplikasi yang dimodelkan sebagai resource yang bisa dilakukan create, read, update, delete yang berkorespondensi dengan CRUD dan empat fundamental HTTP request method:POST, GET, PATCH, dan DELETE. ok demikian saja penjelasan mengenai REST di Rails.Sekarang dalah saatnya membahas sedikit mengenai HTTP request dan controller yang berkaitan dengan HTTP request pada aplikasi kita, berikut ini adalah tabelnya.
HTTP request URL action fungsi
GET /users index Page untuk menampilkan list semua user
GET /users/1 show Page untuk menmpilkan user dengan id 1
GET /users/new new Page untuk membuat user baru
POST /users create Membuat user baru
GET /users/1/edit edit Page untuk mengedit user dengan id 1
PATCH /users/1 update Mengupdate user dengan id 1
DELETE /users/1 destroy Menghapus user dengan id 1

ok demikian saja penjelasan tentang user modelnya jika merasa masih kurang kalian bisa baca ini di resource aslinya di rails tutorial chapter 2.


di bagian berikutnya kita akan membuat model untuk micropost, yang caranya sama saat pembuatan model user, generate model dengan scaffold kemudian lakukan db:migrate.Jika sudah slesai maka cobalah buka file routes.rb, maka akan ada penambahan resource :microposts pada file tersebut sperti ini
Penambahan source secara otomatis pada routes.rb
berikut ini adalah tabel routing rule maps micropost URL untuk melakukan action pada Micropost controller
HTTP requestURLactionfungsi
GET/micropostsindexPage untuk menampilkan list semua microposts
GET/microposts/1showPage untuk menmpilkan microposts dengan id 1
GET/micropost/newnewPage untuk membuat microposts baru
POST/micropostscreateMembuat microposts baru
GET/microposts/1/editeditPage untuk mengedit microposts dengan id 1
PATCH/microposts/1updateMengupdate microposts dengan id 1
DELETE/microposts/1destroyMenghapus microposts dengan id 1

class microposts controller ini juga merupakan class turunan dari ApplicationController, Jika sudah sekarang cobalah tambahakan micropost dengan mengakses localhost:3000/microposts. Tambahakan  daua buah micropost dengan id user yang sudah ada.

Untuk langkah selanjutnya yang akan ditambahakan adalah validasi micropost diaman micropost ini hanya dapat menerima maksimal maksimum 140 karakter saja. Dengan menggunakan Rails, memvalidasi hal tersebut sangatlah mudah dengan menggunakan length validation, untuk melakukan ini class yang perlu kita edit adalah microposts.rb yang berada para direktori model ubahlah clas tersebut menjadi seperti ini.
menambahkan validasi pada micropost
jika kalian sudah menambahkan validasi, yang perlu kalian lakukan sekarng adalah mencoba untuk membuat micropost dengan content lebih dari 140 karakter jika ditolak maka validasi yang kalian buat berhasil.
invalid content 
nah jika validasi sudah jadi, sekarang tinggal menmbahkan asosiasi antara user dengan micropost dimana satu user bisa memiliki lebih dari satu micropost. Dengan menggunakan Active Record pada Rails kita bisa dengan mudah mengasosiasikan kedua model tersebut, dengan berpikir sperti ini "user has many microposts and micropost belongs to user". dengan begitu kita hanya tingga menmbahkan syntax has_many pada  model user dan belongs_to ke model micropost. Jika kalian belum paham maksudnya maka penulisannya seperti ini.
asosiasi model
untuk melihat hasil perubahan asosiasi ini, kita akan menggunakan rails console dan tuliskan command seperti screenshoot, kika benar maka hasilnya akan sperti dibawah ini.
hasil asosiasi
kita bisa melihat saat menuliskan commnad first_user.micropost maka akan mereturn semua data micropost yang terkait dengan first_user tersebut. Ok step selanjutnya adalah melakukan validasi terhadap model yang kita buat supaya model tersebut tidak bisa menerima inputan kosong., oh ya sebelum menuliskannya saya akan memberi tahu aturan menuliskan validasi pada Rails yaitu
validates :nama_atribut, jenis_validasi_1:formula,jenis_validasi_2:formula ...
setiap jenis validasi memiliki formulanya sendiri misal ketika kita menulskan validasi minimum karkter yang ditulis pada kontent adalah 15 maka kita menuliskan length: {minimum:15} jika kita menginginkan validasi supaya content yang diisi tidak boleh kosng maka kita menuliskan presence:true. Balik lagi ke topik utama kita sekarang, yaitu agar setiap atribut dari model yang kita buat tidak boleh menerima inputan kosong adalah dengan menambahkan presence yang kita tulis pada masing-masing model seperti ini.
menambahkan not blank validation pada model
jika sudah lakukan ujicoba dengan memasukan input kosong jika validasi mu benar maka hasilnya untuk user dan micropost seperti ini 
output pada user


output pada micropost
kalian pasti berikir kok itu bagian user kok outputnya bukan Content can't be blank, jawabnya adalah karena pada micropost itu sudah kita asosiasikan dengan user, jadi dia akan mencari dulu user dengan id yang dicari pada kasus ini blank atau "" kan tidak ada, jika kalian input dengan nilai 2 pun outputnya akan sama user must exists. Jika sudah lakukan deploy ke heroku dengagan cara melakukan git add, git commit dan terakhir lakukan push ke branch heroku dan master . 

         Langkah terakhir adalah melakukan migrasi production database supaya database aplikasi yang kita buat bisa bekerja. karena sebelumnya kita menggunakan sql lite untuk melakukan development sedangkan pada environtment production menggunakan PostgreSQL beriku tini adalah commnadnya.
heroku run rails db:migrate
          Jika sudah cobalah untuk membuka aplikasi yang kalian buat pada heroku. sebelum itu saya ingin memberi tahu juga jika controller user dan micropost yang sudah kita buat mereka adalah class dengan parent yang sama yaitu ApllicationController, dan model user dan micropost juga merupakan class dengan parent yang sama yaitu ApplicationRecord. dan yang perlu kalian baca adalah membaca reource aslinya di railstutorial.org chapter 2

          Mungkin ada dari kalian bertanya kok ini sering banget pake screenshoot buat kodingan dikit doang sbenarnya tujuan saya biar kalian saat belajar tidak bisa copy paste syntax saja sih dan menurut saya lebih cepet doang wkwk demikian tutorial kali ini jika ada salah penjelasan pada tutorial mengenai Rails silakan balas di kolom komentar.

Saturday, 10 December 2016

Hari 2 : Hello World Apps

16:58:00 Posted by Unknown No comments


            Akhirnya setelah sekian lama blog saya terabaikan sekarang bisa ngelanjut nulis lagi, beberapa tahun yang lalu udah bahas tentang gimana cara intsall ruby dan framework ruby on rails kali ini, tulisan artikel ini adalah lanjutan ke tahap awal penggunaan rails. Yang perlu kalian lakuin sekrang adalah dengan membuat direktori kusus buat belajar rails. nah kalau sudah sekarang saatnya ngebuat aplikasi hello word dengan menggunakan rails dengan make command berikut pada terminal.
rails new Hello_world
perintah commnad diatas adalah memerintah rails untuk mengnerate aplikasi bernama Hello_world jika berhasil maka rails akan ngegenrate beberpa folder aplikasi Hello_world contoh beberpa direktori hail generate rails adalah sebagai berikut.

Beberpa direktori hasil gnerate
List folder Hasil Generate
Jika sudah berhasil ngegenerate direktorinya sekrang saatnya penjelasan mengenai apa fungsi dari direktori tersebut berikut ini tabel yang sudah saya buat


Direktori/file
Penjelasan
app/
Berisi semua core aplikasi, termasuk models, view, controller dan helper
app/assets
Merupakan tempat dimaan kamu meletakan asset dari aplikasi kamu seperti css, file javasript dan gambar
bin/
Berisi binary executeable file
config/
Merupakan folder untuk konfigurasi aplikasi
db/
Merupakan direktori yang berisi database file
doc/
Merupakan direktori tempat untuk dokumentasi aplikasi
lib/
Merupakan direktori untuk meletakan library modul
lib/asset
Merupakan direktori untuk library asset
log/
Direktori untuk aplikasi log file
public/
Data bisa diakses oleh public contohnya adalah via web browser, atau juga bisa berisi error page
bin/rails
Merupakan sebuah program untuk menggenerate kode, membuaka sesi console atau menjalankan local server
test/
Direktori untuk apllication test
tmp/
Direktori untuk temporary file
vendor/
Merupakan direktory untuk third-party code seperti plugins dan gems
vendor/asset
Merupakan direktory yang bersisi third-party asset sperti, css, file javascript dan gambar
README.md
Merupakan file readme
Rakefile
Merupakan Utility task yang tersedia via rake command
Gemfile
File yang berisi list Gem yang diperlukan untuk aplikasi ini
Gemfile.lock
Merupakan file yang berisi list gem yang digunakan untuk memastikan semua salinan aplikasi menggunakan gem dengan versi yang sama
Config.ru
Sebuah konfigrasi file untuk Rack middleware
.gitignone
Pettern untuk file yang akan diabaikan oleh git


Bundler

            Setelah berhasil membuat aplikasi rails Hello_world  langkah selanjutnya adalah belajar menggunakan bundler untuk menginstall semua gems yang diperlukan oleh aplikasi yang dibuat. Pada rails bundler ini akan dijalankan secara otomatis(via budle install), namun pada tutorial kita juga bakalan belajar cara mengubah konfigurasi default yang digenerate dan melakukan run bundler lagi. petama yang perlu kalian lakukan adalah mebuka file Gemfile dengan menggunakan teks editor kesukaan kalian, nah jika sudah maka hasilnya seperti ini 
Konfigurasi default Gemfile
Jika kita meneliti lebih lanjut file konfigurasi tersebut maka ada tiga cara untuk untuk mengiinstall gem dengan bundler yaitu
  1. gem 'nama_gem'
    • cara penulisan dengan cara ini adalah cara untuk menginstall gem dengan nama yang diinginkan secara otomatis dengan menggunakan perintah tersebut maka Bundller akan mengintsall versi paling terbaru dari gem tersebut. 
  2. gem 'nama_gem', '>= version'
    • dengan menggunkan perintah ini maka secara otomatis Bundler akan menginstall gem dengan versi yang lebih baru atau sama dengan versi yang diinginkan
  3. gem 'nama_gem','~> version'
    • contoh misalkan saya menulikan gem 'coffe-rails', '~>4.0.0' maka secara otomatis bundler akan menginstall gem bernama coffe-rails dengan versi yang lebih baru dari versi 4.0.0 tapi tidak lebih baru dari versi 4.1.0
Ok, sekarang adalah saatnya kita praktek untuk mengubah konfigurasi default gem file, ubahlah konfigurasi default gem seperti berikut ini 
Konfigurasi gemfile yang baru


jika sudah kalian ubah, sekarang saatnya untuk melakukan running commad
bundle install
jika sudah sudah selesai tanpa terjadi error maka kamu berhasil mengubah konfigurasi gem pada aplikasi kamu, tapi jika ada message need to run bundle update first yang perlu kamu lakukan adalah melakukan running commnad bundle upate kemudian baru melakukan command bundle install.

Rails Server

            Ok sekrang kalian sudah paham bagaimana membuat aplikasi dengan rails dan mengkonfigurasi gemfile, terus ada pertanyaan dimana gue bisa ngejalain aplikasi gue, kabar gembiranya rails itu dibuat dengan sebuah command line yang bisa melakukan running local webserver yang ngebantu kita buat ngdevelop aplikasi kita, command tersebut adalah 
rails server

saya menyarankan untuk membuka terminal baru ketika akan melakukan command ini karena ketika terminal kamu tutup maka server rails juga akan berhenti sehingga kamu perlu melakukan running command lagi, dan pastikan kamu melakukan running command ini saat berada di direktori aplikasi rails yang sedang kamu buat biar tidak salah melakukan running project. ok langsung saja kita coba.jika kalian berhasil maka akan keluar output pada terminal dan localhost pada port 3000 kalian akan menadi seperti berikut ini.

Output terminal

localhost:3000


Rails MVC

            Ok, sekarang kalian sudah bisa menyalakan localhost dengan rails tapi kalian belum mendaptkan output yang diingnkan, sebelum itu gue pengin ngebahas barang yang bernama MVC (model,view,controller). MVC adalah merupkan sebuah pendekatan untuk menstrktur software agar kode program bersifat maintainable dan fleksibel dan elemn mvc sudah gue sebutin diatas tadi tinggal pnjelasannya doang, berikut ini penjelasannya


Nama bagian

penjelasan

model

Model class menunjukan
sebuah objek yang membawa data didalamnya juga bisa terdapat logic
untuk melakukan update controller jika terjadi perubahan

view

View merupakan
visualisasi data yang dimiliki oelh model bisa ibilang view ini
bagian GUI-nya

controller

Conteroller digunakan
ebagai penghubung antara view dan model dan juga mengatur aliran
data kepadda model objek dan melakukan update view saat terjadi
perubahan data. Controller menjaga agar view dan model tetap
terpisah


Hello World

            Ok, kita sudah belajar mengenai MVC sekarang saatnya kita mengubah tampilan aplikasi kita menjadi hello world, yang akan kita ubah disini adalah controller actionnya yang sudah didefiniskan di dalam class controller pada rails, kita akan menambahkan method hello_world untuk menampilkan kata hello word dan beriku ini adalah methodnya.
menambah method hello_world pada controller
ok  kita sudah menambahkan method tersebut namun ketika kita buka localhost output kata hello world belum ditampilkan yang perlu kita lakukan sekarang adalah mengubah router root rails yang berada pada config/routes.rb dimana pada bagian ini kalian hanya perlu mengubah satu baris saja yaitu pada bagian 

root 'controller_nama#action_name'
ok langsung saja kita ubah rootnya menjadi seperti berikut ini 

Mengubah root pada router
jika sudah sekarang kalian buka lagi localhost:3000 maka tampilannya kan seperti berikut 
hello world apps
Selamat kalian berhasil membuat aplikasi hello world skarang yang pelru kalian lakukan adalah belajar mengubah-ubah tampilan root tersebut sesuai yang kalian mau.

Deploying

            Ok, sekarang saatnya kita untuk belajar melakukan deploy, pada tutorial ini saya akan melakukan deploy ke heroku, karena menurut saya make heroku itu paling mudah dan bisa dilakukan via git. pertama yang perlu dilakukan adalah melakukan registrassi di heroku jika kalian sudah selesai melakuan registrasi, yang perlu kalian lakukan adalah menginstall heroku toolbelt dengan menggunakan commnad berikut ini pada terminal kalian
wget -O- https://toolbelt.heroku.com/install-ubuntu.sh | sh

Hal yang perlu diketahui mengenai heroku adalah, bahwa heroku menggunakan PostgreSQL yang berarti kita perlu menambahkan gem untuk Postgres atau pg dalam procduction environtmet yang membuat rails nantinya bisa berkomunikasi dengan Postgres  berikut ini adalah gemfile yang sudah saya ubah
menambah gem PostgreSQL
jika sudah diubah yang perlu kita lakukan adalae menyiapkan syitem untuk deployment produksi disini kita akan melakukan running commnad bundle install dengan flag spesial untuk meghindari terinstalnya gem pada local sistem karena yang butuh hanya sistem untuk produksi environtmentnya saja, sehingga perlu pengupdatean Gemfile.lock supaya berisi gem Postgres dengan mengketikan command berikut ini 
bundle install --without production
sebelumnya kalian sudah menginstall registrasi dan menginstall herokutoolbelt dan sekrang yang perlu kalian lakukan adalah melakukan login dari komputer kalian dengan commnad berikut. yang secara otomatis akan menginstall heroku cli jika kalian belum mnginstalnya, menggenertae ssh key dan membuat subdomain baru untuk aplikasi kamu. 
heroku login && heroku keys:add && heroku create
jika kalian sudah melkukan generate maka kalian akan mendapatkan output berupa alamat aplikasi kalian di heroku dan alamat repository gitnya. jika sudah berhasil maka sekarang yang perlu lakukan adalah manjalankan terminal dan menuju direktori kalian dan lakukan git init dan git add . kemudian lakukan remote repository tersebut dangan command berikut ini 
heroku git:remote -a nama-aplikasi-hasil-generate
jika sudah lakukan git add ., git commit, dan terakhir lakukan git push ke branch heroku dan master dengan force tunggu loading sampai selesai, jika sudah sekarang saatnya kita buka alamat hasil generatenya maka hasilnya seperti ini.
Hasil deploy
selamat kalian sudah berhasil melakukan deploy ke heroku sekarang coba untuk melakukan deploy aplikasi yang lain dengan menggunakan heroku, inagt maksimal aplikasi yang bisa di muat di heroku adalah lima aplikasi demikian tutorial ini terimakasih.