Selasa, 20 Maret 2018

Sentiment Analysis API Facebook dengan Topik Pornografi

Nama Kelompok:

Akmal Alfarisi 50414710
Indra Arianggi S. 55414290
Kartiko Pramudito 55414792
Thomi Alghani 5A414736

Install Python. In case Python yang kami gunakan yaitu Python 2.7.14.

Python dapat di-download di website resminya, yaitu: https://www.python.org/downloads/

Setelah selesai di-install, kemudian mengatur Path pada Python dengan cara membuka Control Panel -> System and Security -> System -> Advanced system settings. Lalu akan muncul jendela System Properties, pilih Environment Variables.


Akan muncul jendela baru, lalu pada System variables, klik Path lalu klik tombol Edit.


Klik tombol New untuk menambahkan path baru dengan direktori C:\Python27.


Kemudian men-install module-module yang dibutuhkan. Disini module yang. kami gunakan yaitu: facebook-sdk, numpy, pandas, dan textblob.

Facebook-sdk merupakan library yang dirancang untuk mendukung Facebook Graph API dan Official Facebook JavaScript SDK, yang merupakan cara kanonik untuk menerapkan otentikasi Facebook.

Graph API adalah sarana utama yang digunakan aplikasi untuk membaca dan menulis ke graf sosial Facebook. Semua SDK dan produk Facebook berinteraksi dengan Graph API, dan API Facebook yang lain merupakan ekstensi dari Graph API, sehingga penting untuk dapat memahami kinerja Graph API.

TextBlob adalah library Python yang digunakan untuk memproses data tekstual. Library ini menyediakan API sederhana untuk menyelam ke dalam tugas pemrosesan bahasa alami (NLP) seperti penandaan part-of-speech, ekstraksi frase kata benda, analisis sentimen, klasifikasi, terjemahan, dan lainnya.

NumPy adalah paket mendasar untuk komputasi ilmiah dengan Python. NumPy dapat digunakan sebagai wadah data multi dimensi yang efisien. Berbagai macam tipe data dapat didefinisikan. Hal ini memungkinkan NumPy untuk mengintegrasikan secara mulus dan cepat de

Panda adalah sebuah open source, library berlisensi yang menyediakan struktur data berkinerja tinggi dan mudah digunakan serta alat analisis data untuk bahasa pemrograman Python.ngan berbagai macam database.

Cara men-install module-module di atas yaitu bisa dilakukan dengan cara berikut:
Pertama, buka cmd lalu masuk ke direktori C:\Python27\Scripts. Kemudian ketikkan pip install facebook-sdk, pip install textblob, pip install numpy, dan pip install pandas.


Setelah Python beserta module-module yang dibutuhkan telah di-install. Maka sekarang memulai mengetikkan source code pada texteditor kesayangan kalian. Disini kami menggunakan Visual Studio Code. Sebelum memulai mengetikkan source code-nya, install terlebih dahulu python extension dan Code Runner untuk dapat menjalan program python-nya.



import facebook as fb
from textblob import TextBlob
import requests
import numpy as np
import pandas as pd
import re

corpus = []
datasets = []

graph = fb.GraphAPI(access_token="EAACEdEose0cBAAPwWQfDW1rKWjJ7xZBhVEnMrpBAz5OdVMX05Y0SXNJiuw5r22UHzukZAj0FUXiAgYC0Abn7gSBBKOVa4pk5OeQirNEQf4N326CjY0eB18PYYwRRgm83xQNJbIhxRAZAujYEpVENSeHitUhqg8VGvZC842MREzUdbn4KL6L9zdirfhqFwrFD9TtLNNMoowZDZD", version = "2.7")

# KATA KUNCI SEARCH
key = 'boobs'
# LIMIT PENCARIAN (page, post, comment)
limit = 5
# REQUEST
req = "/search?q=%s&type=page&limit=%s"%(key, limit)

pages = graph.request(req)
pagelist = pages['data']

# dapatkan 5 post dari masing-masing page
for page in pagelist:
    posts = graph.request('/%s/posts?%s'%(page['id'], limit))
    postslist = posts['data']
    # dapatkan 5 comment dari masing-masing post
    for post in postslist:
        comments = graph.request('/%s/comments?%s'%(post['id'], limit))
        commentlist = comments['data']
        # dapatkan detail(text) dari masing-masing comment
        for comment in commentlist:
            # print comment['message']
            comment_clean = re.sub('[^a-zA-Z]', ' ', comment['message'])
            comment_clean = comment_clean.lower()
            corpus.append(comment_clean)
           
            #message = TextBlob(comment['message'])
            #datasets.append([comment['message'], message.sentiment.polarity])

# print hasil

for data in corpus:
    if(TextBlob(data).sentiment.polarity <= 0):
        sentiment = 'negative'
    else: sentiment = 'positive'

    datasets.append([data, sentiment])

array = np.array(datasets)
#np.savetxt('hasil.csv', array, delimiter=',')
print array
df = pd.DataFrame(array)
df.to_csv('hasil.csv')

Logika Program

import facebook as fb
from textblob import TextBlob
import requests
import numpy as np
import pandas as pd

Berfungsi untuk mengimpor package yang diperlukan dalam menjalankan program.

corpus = []
datasets = []

Sintaks diatas berfungsi untuk memberi array kosong terlebih dahulu sebelum diisi oleh data yang akan diproses selanjutnya.

graph = fb.GraphAPI(access_token="EAACEdEose0cBAFy4xrzEpWgSO5f0D53wmiq1sPfwPtCiDEYzEotZCPjlzx0PTXJG8zw8ZA43veEsve7szO28LZAaxJeXDZCAMw8d8hIWHyBZB9IZAryGl1WZBYMP4D3S4JLOSX2dbzBrPwVOer3EqHuTK9m3E3M9wSuilkBxshvnc9fTHJHz4MQDuxto30S1N1L4SBVusSJxFZByCiZAxhsKKBZAuAzeG0E77xM3tuBfPiswZDZD", version = "2.7")

Sintaks diatas merupakan sintaks dimana memberikan access token untuk mengakses seluruh data di dalam facebook sesuai ID dan nama.

# KATA KUNCI SEARCH
key = 'boobs'
# LIMIT PENCARIAN (page, post, comment)
limit = 5
# REQUEST
req = "/search?q=%s&type=page&limit=%s"%(key, limit)

pages = graph.request(req)
pagelist = pages['data']

Sintaks diatas menentukan apa yang berhubungan dengan key-nya akan ditampilkan serta memberikan lima pages yang akan memuat data-data tersebut yang selanjutnya ditampung ke dalam array.

for page in pagelist:
    posts = graph.request('/%s/posts?%s'%(page['id'], limit))
    postslist = posts['data']
    # dapatkan 5 comment dari masing-masing post
    for post in postslist:
        comments = graph.request('/%s/comments?%s'%(post['id'], limit))
        commentlist = comments['data']
        # dapatkan detail(text) dari masing-masing comment
        for comment in commentlist:
            # print comment['message']
            comment_clean = re.sub('[^a-zA-Z]', ' ', comment['message'])
            comment_clean = comment_clean.lower()
            corpus.append(comment_clean)

Melakukan perulangan untuk mendapatkan komentar di Facebook. Permintaan akan dimasukan dalam perulangan. Untuk menghindari tanda baca yang tidak diperlukan, maka dicantumkan source code dimana tugasnya membersihkan karakter yang dianggap mengganggu.

for data in corpus:
    if(TextBlob(data).sentiment.polarity <= 0):
        sentiment = 'negative'
    else: sentiment = 'positive'

    datasets.append([data, sentiment])

array = np.array(datasets)
#np.savetxt('hasil.csv', array, delimiter=',')
print (array)
df = pd.DataFrame(array)
df.to_csv('hasil.csv')

Menjadikan pengklasifikasian antara dua jenis yaitu positif dan negative. Komentar akan difilter menggunakan TextBlob. Setelah data terkumpul, dimasukkan ke dalam array list yang selanjutnya diubah formatnya menjadi csv.

Access Token didapatkan dari Facebook Graph API, bisa diakses di link: https://developers.facebook.com/tools-and-support/


Kemudian pilih Penjelajah API Graf.


Klik Dapatkan Token, lalu pilih Dapatkan Token Akses Pengguna.


Lalu akan muncul jendela seperti gambar di bawah ini. Kemudian ceklis semua fields yang ada pada Izin Data Pengguna, lalu klik Dapatkan Token Akses.


Kemudian masuk dengan Facebook.


Klik OK.


Maka akan didapatkan token seperti gambar di bawah ini. Copy-kan token tersebut ke source code yang telah dibuat.


Klik tombol Kirim untuk mendapatkan id Facebook pengguna.


Output yang dihasilkan akan diubah dari JSON (JavaScript Object Notation menjadi CSV (Comma Separated Value) dengan menampilkan data seperti di bawah ini.



Output yang dihasilkan lebih dari seribu query yang dihasilkan.

Minggu, 10 Desember 2017

Minggu, 19 November 2017

Pendirian PT. Uang Mahasiswa


Untuk memenuhi berbagai kebutuhan selama memenuhi pendidikan di universitas, banyak mahasiswa membutuhkan sejumlah pinjaman untuk mahasiswa yang bisa membantu mencukupi kebutuhan finansial mereka. Mahasiswa yang meminjam uang untuk menempuh pendidikan kuliah memang bukan hal yang baru dan tabu. Mahasiswa yang memang seharusnya dilatih menjadi seseorang yang mandiri ternyata banyak yang masih sangat bergantung pada orang tua mereka untuk masalah keuangan. Keuangan yang diperuntukkan mahasiswa tersebut ternyata tidak semuanya berasal dari orang tua mereka secara murni karena ada beberapa yang meminjam dari pihak-pihak lain untuk memenuhi kebutuhan biaya perkuliahan seperti dari bank, saudara ataupun teman, ataupun dari pegadaian.

Jumat, 27 Oktober 2017

Bentuk-bentuk Badan Usaha Beserta Prosedur Legalitasnya

Jenis-jenis Badan Usaha

Badan usaha merupakan satu kesatuan dari sebuah hukum , teknis, dan ekonomis yang dimana memiliki sebuah tujuan untuk mencari laba atau keuntungan yang maksimal serta mmeberikan pelayanan kepada masyarakat. Banyak orang yang menyamakan antara badan usaha dengan perusahan, Padahal antara badan usaha dan perusahaan merupakan suatu hal yang berbeda. Perbedaan utamanya yakni badan usaha merupakan sebuah lembaga sedangkan perusahaan adalah tempat dimana badan usaha itu mengelola dan memproses faktor-faktor produksi yang ada. Jadi pada dasarnya badan usaha memiliki ruang lingkup yang lebih luas karena sebuah badan usaha bisa memiliki satu bahkan dua atau lebih perushaan yang akan menjadi tempat mereka mengelola faktor produksi.

Berikut ini merupakan jenis-jenis badan usaha:
1.     Perorangan
Bentuk ini merupakan bentuk yang pertama kali muncul di bidang bisnis yang paling sederhana, dimana dalam hal ini tidak terdapat pembedaan pemilikan antara hal milik  pribadi dengan milik perusahaan. Harta benda yang merupakan kekayaan pribadi sekaligus  juga merupakan kekayaan perusahaan yang setiap saat harus menanggung utang-utang dari perusahaan itu. Bentuk badan usaha semacam ini pada umumnya terjadi pada  perusahaan-perusahaan kecil, misalnya bengkel kecil, toko pengecer kecil, kerajinan, serta jasa dll.

2.     Koperasi
Ditinjau dari arti katanya koperasi dalam bahasa asing cooperation artinya sebagai kerja sama. Sedangkan dalam arti bisnis koperasi merupakan bentuk kerja sama dari para anggaota dengan tujuan agar dapat memenuhi kebutuhan mereka bersama secara lebih ekonomis. Dengan demikian koperasi dapat dibentuk oleh konsumen ataupun oleh para produsen. Koperasi konsumsi adalah koperasi yang dibentuk oleh para konsumen. Sedangkan Koperasi Produksi adalah koperasi yang dibentuk oleh produsen. Yang lebih dikenal dengan sebutan KUD (Koperasi Unit Desa).

3.     BUMN (Badan Usaha Milik Negara)
BUMN yaitu badan usaha yang semua modalnya ataupun sebagaian modalnya dimiliki oleh pemerintah dan status pegawai yang bekerja di BUMN adalah pegawai negeri. BUMN saat ini ada 3 (tiga) macam, diantaranya yaitu:

a.    Perjan (Perusahaan Jawatan)
Perjan yaitu bentuk BUMN yang semua modalnya dimiliki oleh pemerintah. Badan usaha ini berorientasi pada pelayanan masyarakat. Karena selalu mengalami kerugian sekarang ini sudah tidak ada lagi perusahaan BUMN yang memakai model Perjan, sebab besarnya biaya yang digunakan untuk memelihara perjan tersebut. Contoh Perjan misalnya seperti: PJKA yang sekarang sudah berganti menjadi PT. KAI (PT Kereta Api Indonesia).

b.    Perum (Perusahaan Umum)
Perum yaitu Perjan yang sudah diubah. Sama seperti Perjan, Perum dikelolah oleh pemerintah dengan status pegawainya yaitu pegawai negeri. Akan tetapi perusahaan ini masih mengalami kerugian meskipun status Perja telah diubah menjadi Perum. Sehingga pemerintah harus menjual sebagian sahamnya kepada publik dan statusnya berubah menjadi Persero.

c.    Persero
Persero yaitu badan usaha yang dikelola oleh pemerintah atau negara. Sangat berbeda dengan Perjan maupun Perum, tujuan dari Persero adalah untuk mencari keuntungan dan untuk memberikan pelayanan kepada masyarakat sehingga Persero tidak akan mengalami kerugian. Biaya untuk mendirikan persero sebagian atau seluruhnya berasal dari kekayaan negara dan pemimpin Persero disebut dengan Direksi, serta pegawai yang bekerja berstatus sebagai pegawai swasta. Perusahaan ini tidak mendapatkan fasilitas dari negara Dan badan usaha Persero ditulis dengan PT (Nama dari perusahaan).

4.     BUMS (Badan Usahan Milik Swasta)
Badan Usaha Milik Swasta atau BUMS adalah badan usaha yang didirikan dan dimodali oleh seseorang atau sekelompok orang. Berdasarkan UUD 1945 pasal 33, bidang- bidang usaha yang diberikan kepada pihak swasta adalah mengelola sumber daya ekonomi yang bersifat tidak vital dan strategis atau yang tidak menguasai hajat hidup orang banyak.

BUMS adalah badan usaha yang seluruh modalnya berasal dari pihak swasta yang dimiliki seseorang atau beberapa orang. BUMS bertujuan untuk mencari keuntungan seoptimal mungkin, untuk mengembangkan usaha dan modalnya serta membuka lapangan pekerjaan. Selain berperan dalam menyediakan barang, jasa, badan usaha swasta juga membantu pemerintah dalam usaha mengurangi pengangguran serta memberi kontribusi dalam pemasukkan dana berupa pajak.

Bentuk badan usaha ini dapat dibagi kedalam beberapa macam:

a.    Firma/Kongis Peserikatan (Fa)
Firma yaitu suatu Badan Usaha yang didirikan oleh 2 (dua) orang atau lebih, yang dimana setiap anggotanya mempunyai tanggung jawab penuh terhadap perusahaan. Untuk mendirikan firma dilakukan dengan cara membuat akta perjanjian dihadapan Notaris. Yang dimana perjanjian itu memuat nama dari pendiri Firma, cara membagi-bagi keuntungan yang diperoleh, serta waktu dimulai maupun diakhirinya perjanjian tersebut.

b.    Perserikatan Komander (CV)
CV merupakan badan usaha yang didirikan olah 2 (dua) sekutu orang ataupun lebih, yang dimana sebagian merupakan sekutu aktif dan sebagian lainnya lagi merupakan sekutu pasif. Sekutu aktif yaitu mereka yang menyertakan modal sekaligus menjalankan usahanya sedangkan sekutu pasif yaitu mereka yang menyertakan modal dalam usaha tersebut. Sekutu aktif mempunyai tanggung jawab penuh terhadap semua kekayaan dan terhadap utang perusahaan, sedangkan sekutu pasif hanya mempunyai tanggung jawab terhadap modal yang diberikan.

c.    Perseroan Terbatas (PT)
PT merupakan badan usaha yang modalnya terbagi atas saham-saham, tanggung jawabnya terhadap perusahaan bagi para pemiliknya hanya sebatas sebesar saham yang dimiliki. Saat ini ada 2 (dua) macam PT yaitu PT Tertutup dan PT terbuka. Yang dimaksud dengan PT tertutup adalah PT yang dimana pemegang sahamnya terbatas hanya dikalangan tertentu saja seperti misalnya hanya di kalangan keluarga, sedangkan yang dimaksud dengan PT terbuka adalah PT yang saham-sahamnya dijual kepada publik atau umum.

Beberapa contoh Badan Usaha Milik Swasta (BUMS) saat ini, misalnya seperti: PT Pupuk Kaltim, PT Union Metal, PT Djarum, PT Holcim, PT Karakatau Steel dan lain-lain.

d.    Yayasan
Yayasan adalah bentuk organisasi wasta yang didirikan untuk tujuan sosial kemasyarakatanyang tidak berorientasipada keuntunga. Misalnya Yayasan Panti Asuhan, Yayasan yang mengelola Sekolahan Swasta, Yayasan Penderita Anak Cacat dll.

Legalitas Badan Usaha

Mengapa Mendirikan Badan Usaha ?

1. Untuk Hidup
2. Bebas dan tidak terikat
3. Dorongan Sosial
4. Mendapat Kekuasaan
5. Melanjutkan Usaha Orang Tua

Faktor-faktor yang Harus Dihadapi Dalam Pendirian Badan Usaha

1. Barang dan Jasa yang akan dijual
2. Pemasaran barang dan jasa
3. Penentuan harga
4. Pembelian
5. Kebutuhan Tenaga Kerja
6. Organisasi intern
7. Pembelanjaan
8. Jenis badan usaha yang akan dipilih, dll

Badan Hukum Sebuah Perusahaan

  1. Sebuah Usaha yang dilindungi oleh hukum dan perundang-undangan yang berlaku  pada suatu Negara
  2. Memiliki hak dan kewajiban kepada Negara

Proses Pendirian Badan Usaha

  1. Mengadakan rapat umum pemegang saham
  2. Dibuatkan akte notaris (nama-nama pendiri, komisaris, direksi, bidang usaha, tujuan  perusahaan didirikan).
  3. Didaftarkan di pengadilan negeri (dokumen : izin domisili, surat tanda daftar perusahaan (TDP), NPWP, bukti diri (identitas pribadi) pendiri).
  4. Diberitahukan dalam lembaran negara (legalitas dari Kementerian Kehakiman)

Rerensi:

Jumat, 29 September 2017

Pengantar Bisnis Informatika # : Grab


Grab didirikan pada tahun 2011 di Malaysia. Grab dicetuskan pria kaya asal Malaysia yang merupakan lulusan Harvard Business School Amerika Serikat bernama Anthony Tan bersama rekannya Tan Hooi Ling.  Ide Grab yang dulunya bernama GrabTaxi muncul di kepala Tan saat dia kuliah. Dari tahun 2011 sampai saat ini tahun 2017 Grab berkembang pesat dan menjadi salah satu Penyedia aplikasi transportasi online di Indonesia.

Kamis, 04 Mei 2017

Membuat Texture Bola Dunia Menggunakan Aplikasi Blender

Nama Anggota Kelompok 9:
  1. Akmal Alfarisi (50414710)
  2. Deni Mardiana (52414694)
  3. Fuad Aji Pratomo (54414397)
  4. Linda Dwi Novianti (56414079)
  5. Muhammat Amir Munajad (57414612)

Pada kesempatan kali ini penulis akan membuat Texture Bola Dunia menggunakan aplikasi Blender. Artikel ini bertujuan untuk melengkapi nilai tugas dari mata kuliah Grafik Komputer 2.

Untuk membuat bola dunia maka Object yang digunakan yaitu UV Sphere. Untuk menambahkannya dapat dilakukan dengan cara tekan Shift+A pada keyboard lalu pada Mesh pilih UV Sphere.


Maka akan muncul Object UV Sphere seperti gambar dibawah ini.


Untuk menambahkan Texture pada UV Sphere dapat dimulai dengan mengubah Object Interaction Mode dari Object Mode menjadi Edit Mode seperti gambar dibawah ini.


Maka tampilan UV Sphere akan terseleksi seluruh bagian Vertex-nya seperti gambar dibawah ini.


Tekan 1 pada Keyboard untuk mengubah tampilan menjadi Front Ortho.


Kemudian tekan U (UV Mapping) pada Keyboard dan pilih Sphere Projection. Sphere Projection dipilih karena metode UV Maps ini responsif dengan Mesh atau Object UV Sphere. Sphere Projection berfungsi agar Texture yang dibuat atau diberikan nantinya tidak akan berantakan.


Untuk menambahkan Texture pada UV Sphere ubah terlebih dahulu Editor Type menjadi UV/Image Editor.


Maka tampilannya akan terlihat seperti gambar dibawah ini.


Klik Open pada bagian bawah untuk mencari dan membuka file/gambar Texture yang telah disediakan sebelumnya, lalu klik Open Image.



Lalu akan muncul tampilan Texture seperti gambar dibawah ini. Sesuaikan ukuran yang diinginkan.


Kemudian ubah lagi tampilan Editor Type menjadi 3D View kembali.


Dan ubah juga tampilan Object Interaction Mode menjadi Object Mode kembali.


Tekan N pada Keyboard lalu gulir kebawah, pada bagian Shading pilih Multitexture.


Dan ubah tampilan Viewport Shading menjadi Texture.


Bisa dilihat bahwa tampilan awal setelah UV Sphere diberi Texture yaitu masih kasar.


Untuk memperhalus permukaan dan Texture-nya dapat dilakukan dengan cara pada Tools yang terletak dibagian kiri klik Smooth.


Bisa dilihat bahwa permukan bola dunia sudah lumayan halus, tetapi tidak bulat sempurna.


Untuk memperhalus dan memperbagus bentuk bola dunia, pada Properties dibagian Modifier klik Add Modifier lalu pilih Subdivision Surface.


Sehingga tampilan bola dunia menjadi bulat dengan permukaan Texture yang halus.


Karena Texture masih belum masuk ke Object bola dunianya maka yang perlu dilakukan yaitu pada Properties pilih Material lalu klik New.


Berikut tampilan Meterial pada Properties.


Setelah itu pilih bagian Texture untuk memasukkan Texture yang telah disediakan sebelumnya dengan cara klik New.


Lalu gulir atau Scroll kebawah. Pada bagian Image klik Open dan pilih Texture yang telah disediakan dan ingin diaplikasikan.


Gulir lagi kebawah, pada bagian Mapping pilih Coordinates-nya UV dengan Map sama dengan UVMap.


Setelah itu me-render bola dunia yang telah dibuat dengan cara pada bagian atas klik Render lalu pilih Render Image. Atau pada tekan F12 pada Keyboard.


Berikut tampilan Render bola dunia untuk pertama kalinya.


Balik lagi ke tampilan Editor Type ke 3D View. Lalu pada Properties pilih bagian Material lalu gulir kebawah dan aktifkan fungsi Geometry.


Tekan 0 pada Keyboard untuk menampilkan tampilan Camera Persp seperti gambar dibawah ini.


Kemudian klik kanan bola dunia lalu tekan N pada keyboard dan check list Lock Camera to View yang berfungsi untuk mengatur tempat dan posisi bola dunia pada tampilan Camera Persp yang dimana juga menjadi tampilan pada saat di render nantinya.


Atur letak posisi bola dunia sesuai keinginan,


Lalu Render lagi untuk melihat hasil Geometry dan letak posisi yang telah diatur sebelumnya.


Bisa dilihat bahwa tampilan permukaan bola dunia masih kasar. Sehingga untuk memperhalus bisa dilakukan dengan cara kembali ke tampilan Editor Type 3D View.


Lalu klik bola dunia dan ubah nilai Geometry menjadi 0.100.


Kemudian Render kembali bola dunia. Dan sekarang Texture permukaan bola dunia sudah menjadi lebih halus. Akan tetapi masih terlalu terang permukaan dari bola dunia tersebut.


Untuk meminimalisir intensitas cahaya dari bola dunia bisa dilakukan dengan cara pada Properties pilih bagian Material, lalu di Specular ubah nilai Intensity sesuai keinginan.


Terakhir Render kembali bola dunia dan berikut merupakan tampilan terakhir dari bola dunia yang telah dibuat.