IMG-20160716-WA0007

Saya sangat bersyukur masih diberi kesempatan untuk menulis buku lagi. Di buku kedua ini sebenarnya sudah pernah sedikit saya singgung dalam buku yang pertama bahwa bermain-main dengan AJAX ternyata tidak hanya membawa keuntungan, namun juga ada sisi negatifnya, yang apabila kita tidak cermati, bisa menjadi sebuah celah bagi hacker untuk dapat masuk ke sistem kita.

Buku ini bukan buku hacking, juga tidak memuat cara-cara untuk melakukan hacking. Saya juga bukan seorang hacker, bahkan secara jujur saya mengakui bahwa pengetahuan saya di dunia sekuritas mungkin sangat terbatas, jika dibandingkan dengan teman-teman saya lainnya yang memang menekuni di bidang tersebut. Namun sejak dulu, topik security ini selalu menggelitik minat saya, melihat begitu besarnya antusiasme masyarakat dewasa ini, khususnya dari kalangan pelajar. Karena itulah, topik ini haruslah disampaikan dengan baik, agar generasi muda sekarang tidak hanya memandang sebuah tindakan hacking sebagai kesenangan semata, namun lebih jauh daripada itu, ada sebuah beban moral yang besar yang tentunya diikuti dengan konsekuensi.

Karena itu dengan segala kerendahan hati, saya berusaha merangkum beberapa topik security ini ke dalam buku kedua saya yang masih diterbitkan oleh penerbit Lokomedia. Untuk kasus eskploitasi AJAX sendiri sebenarnya bukan tindakan hacking, karena kita masih harus login ke situs yang bersangkutan. Hanya saja, fungsi AJAX yang ada di situs tersebut mempunyai beberapa kelemahan yang bisa dieksploitasi dengan mudah. Saya membuat tool automator untuk memasukkan data dengan program Visual Basic, dengan mempelajari parameter yang dikirimkan AJAX ke web server.

Buku saya akan bisa Anda dapatkan di toko buku pada akhir Agustus 2016, atau awal September 2016. Saya yakin, Anda bisa mendapatkan sesuatu dengan membaca buku saya.

Tags: ,

cover-monitoring-siswa-small

Setelah cukup panjang perjalanan menulis sebuah buku, akhirnya obsesi untuk menerbitkan buku tercapai juga. Terima kasih yang tak terhingga kepada teman2 redaksi Lokomedia yang bersedia menerbitkan tulisan saya dan semoga dapat diterima di kalangan pembaca khususnya di bidang pendidikan. Sistem yang dikupas di dalam buku ini sebenarnya sampai saat ini pun masih berjalan dan diberlakukan di sekolah kami. Mudah-mudahan dengan membaca buku ini, rekan-rekan guru khususnya, mendapatkan pencerahan untuk semakin menegakkan disiplin bagi anak didik kita di lingkungan sekolah.

Sesuai dengan namanya, pembuatan Sistem Monitoring Pelanggaran Siswa bertujuan untuk mencatat setiap pelanggaran yang dilakukan oleh siswa, dimana dengan adanya sistem ini, maka setiap guru (tidak hanya bagian kesiswaan saja) bisa menginput pelanggaran yang dilakukan oleh siswanya sendiri, dan secara otomatis pada setiap akhir tahun ajaran, data-data pelanggaran tersebut bisa di rekap secara cepat menjadi sebuah laporan dan statistik yang nyaman untuk dibaca dan dilihat.

Program atau sistemnya akan diberi nama CHaPSA. Didalam buku ini akan dibahas tuntas cara pembuatannya, diawali dari desain sistem, interface program dan alur sistem, dilanjutkan dengan implementasi coding dengan PHP dan AJAX, dan terakhir implementasi coding dengan Android. Untuk CHaPSA yang berbasis Android juga dibuat versi Siswa, dimana nantinya siswa bisa memonitor pelanggaran yang sudah pernah mereka lakukan.

SPESIFIKASI BUKU:

Judul : Membuat Sistem Monitoring Pelanggaran Siswa Berbasis Web dan Android
Penulis : Wahyu Kurniawan
Harga : Rp. 53.000
Tebal Buku : 170 Halaman
Dimensi (L x P) : 14 x 21 Cm (Standar)
Tanggal Terbit : 31 Agustus 2015

DAFTAR ISI

BAGIAN I. Rancang Sistem Monitoring Pelanggaran Siswa
BAB 1. Latar Belakang
BAB 2. Jenis Peraturan Beserta Konsekuensinya
BAB 3. Rancang Database dan User Interface
3.1. Rancang Database
3.2. Rancang User Interface
3.3. Rancang Alur Program

BAGIAN II. Implementasi Sistem Berbasis Web
BAB 4. Membuat Login Gateway
4.1. Pendahuluan
4.2. Membuat Class Login
4.3. Proses Login dengan AJAX
4.4. Batasan AJAX
BAB 5. Implementasi AJAX untuk CRUD Database
5.1. CRUD Database
5.2. Create
5.3. Remove
5.4. Update
5.5. Display
BAB 6. Implementasi Sisi Interface User
6.1. Navigasi Kelas dan Pencarian Siswa
6.2. Update Pelanggaran Siswa
6.3. Lebih Jauh dengan Facebox
6.4. Mengubah Status SP (Surat Peringatan)
6.5. Mengubah Personal Notes
6.6. Mengekspor Histori Pelanggaran ke Format Excel
6.7. Menghitung Pengurangan Points
6.8. Mengedit Data Pelanggaran
6.9. Menghapus Data Pelanggaran
6.10. Menginput Data Pelanggaran
BAB 7. Implementasi Sisi Interface Admin
7.1. Data Master Guru, Wali Kelas dan Siswa
7.2. Data Pelanggaran
7.3. Data Regulasi
BAB 8. Membuat Statistik Pelanggaran Siswa
8.1. jQuery Fusion Chart
8.2. Grafik Data Pelanggaran

BAGIAN III. Implementasi Sistem Berbasis Android
BAB 9. Persiapan Ngoding Android
9.1. Instalasi JDK (Java Development Kit)
9.2. Download ADT (Android Development Tool)
9.3. Bekerja dengan Eclipse (JAVA IDE)
9.4. Instalasi AVD (Android Virtual Device)
BAB 10. Merancang Layout Aplikasi Android
10.1. Membuat List of Activity
10.2. Merancang User Interface
BAB 11. Menciptakan Koneksi Server dengan Android
BAB 12. Membuat Fungsi API
12.1. Pengertian API
12.2. Fungsi get_version
12.3. Fungsi authorize
12.4. Fungsi get_last_offenses
12.5. Fungsi get_student_profile
BAB 13. Implementasi Sistem pada Android
13.1. Mengenal Struktur Program Android
13.2. AndroidManifest.xml
13.3. Splash Screen
13.4. Dashboard Activity
13.5. Login Activity
13.6. Inbox Activity
13.7. Password Activity
13.8. Profile Activity
BAB 14. Distribusi Aplikasi Kepada Siswa
BAB 15. Panduan Penggunaan Program
15.1. Versi Web
15.2. Versi Android

lokomedia-screenshot1

 

lokomedia-screenshot2

lokomedia-screenshot3

Updated:

Beberapa teman bahkan telah mengirim email kepada saya secara langsung untuk menanyakan beberapa hal berkaitan dengan buku saya. Ada yang menanyakan, apa yang dimaksud dengan program CHaPSA? Nama program ini sebenarnya adalah singkatan dari “Catatan Harian Pelanggaran Siswa” 🙂 Saya sengaja menyingkatnya dengan nama salah satu permainan kartu, agar gampang diingat.

Dalam kesempatan saya ingin menginformasikan beberapa hal yang harus dilakukan terkait dengan program yang saya sertakan jika Anda membeli buku ini.

Disable fungsi encrypt
Pada file sa_login_class, terdapat function lakukan_login yang berfungsi untuk mengotentikasi user yang login. Nah, di dalam function itu adan pemanggilan function lainnya (convert) yang sebenarnya berfungsi untuk melakukan pengacakan password. Perhatikan baris perintah berikut:
$pass = convert($pass, ‘aaaaaaaa’);
Nah, karena saya tidak melakukan enkripsi di data yang saya sertakan, maka sebaiknya baris perintah diatas dimark saja, agar dilompati oleh PHP. Karena apabila tidak didisable/dimark, tentu saja Anda tidak akan bisa login, walaupun username dan password yang dimasukkan sudah benar.

Modifikasi Struktur Table
Versi Android yang digunakan di buku ini adalah Android untuk siswa, sehingga untuk bisa login, siswa membutuhkan user dan password. Untuk tabel junior dan senior yang ada di database, kita perlu menambahkan field pass (VARCHAR 20) agar proses otentikasi siswa berjalan dengan sempurna.

Create Table log_api
Satu hal penting lagi yang harus kita lakukan agar program tidak error, adalah menyiapkan table log_api yang dapat kita tambahkan di dalam database. Berikut adalah struktur tabelnya:
CREATE TABLE IF NOT EXISTS `log_api` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`id_student` varchar(6) NOT NULL,
`class` varchar(6) NOT NULL,
`tanggal` datetime NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;

Sumber: ngodingandroid.blogspot.com

 

Tags: ,

contactwahyu on July 26th, 2016

1. Convert the following decimal numbers into binary numbers! (5 marks)
a) 9 b) 19 c) 46 d) 35 e) 49

2. Convert the following octal numbers into decimal numbers! (5 marks)
a) 34 b) 51 c) 201 d) 126 e) 42

3. Convert the following decimal numbers into octal numbers! (5 marks)
a) 29 b) 135 c) 341 d) 429 e) 417

4. Convert the following octal numbers into binary numbers! (5 marks)
a) 25 b) 273 c) 415 d) 7173 e) 5325

5. Convert the following hexadecimal numbers into binary numbers! (5 marks)
a) 1A b) 8B c) EA2 d) FEFE e) CB6

6. Convert the following binary numbers into hexadecimal numbers! (5 marks)
a) 11010010 b) 111 c) 10101111010 d) 101010 e) 1001001110

Tags: ,

contactwahyu on May 17th, 2016

Cobalah untuk membuat model 3d meja dan kursi seperti yang ada di dalam beberapa contoh berikut:

kursi

meja

hqdefault

  • Minimal harus ada 1 model meja dan 1 model kursi
  • Boleh menggunakan tekstur dan background
  • Dirender, diberi nama dan dikumpulkan dalam bentuk image JPG

Tags:

contactwahyu on May 2nd, 2016

SAMSUNG CAMERA PICTURES

SAMSUNG CAMERA PICTURES

Tags: , ,

contactwahyu on April 20th, 2016

StrokeScribe1.Alphabet = CODE39 ‘This code will output CODE 39 barcodes

Printer.ScaleMode = vbMillimeters

bar_w = 35 ‘Barcode width, 35mm
bar_h = 20 ‘Barcode height, 20mm
page_w = 40 ‘Page width
page_h = 45 ‘Page height

Dim ID, Barcode, Artikel, kode_warna, Warna, Ukuran

ID = rs_barcode.Fields(“id”)
Barcode = rs_barcode.Fields(“barcode”)

Dim rstSearch As ADODB.Recordset
Set rstSearch = New ADODB.Recordset
gString = “SELECT * FROM barcode_global WHERE id=” & ID
‘MsgBox gString
Set rstSearch = cn.Execute(gString)
Do While Not rstSearch.EOF
Artikel = rstSearch(“artikel”)
kode_warna = rstSearch(“kode_warna”)
Ukuran = rstSearch(“ukuran”)
rstSearch.MoveNext
Loop

‘get warna from master warna
gString = “SELECT * FROM warna WHERE kode_warna='” & kode_warna & “‘”
‘MsgBox gString
Set rstSearch = cn.Execute(gString)
Do While Not rstSearch.EOF
Warna = rstSearch(“jenis_warna”)
rstSearch.MoveNext
Loop

Dim TopMargin, LeftMargin, LineSpacing, BulanCetak
TopMargin = 3
LeftMargin = 14
LineSpacing = 6

For i = 1 To 1 ‘We will print 1 labels

StrokeScribe1.text = Barcode
Set pic = StrokeScribe1.GetPictureHandle(EMF, bar_w, bar_h) ‘Returns a handle to a barcode image in EMF format

If StrokeScribe1.Error > 0 Then ‘In case of an error we will show the message and cancel printing
MsgBox StrokeScribe1.ErrorDescription
Printer.KillDoc
Exit Sub
End If

Printer.CurrentX = 0 ‘A text label will appear at the top-left corner of the page
Printer.CurrentY = 0

‘set default font
Printer.Font = “Arial Black”
Printer.FontBold = True
Printer.FontItalic = False
Printer.FontSize = 20 ‘A small, 6-point font

‘printing Artikel
txt_w = Printer.TextWidth(Artikel)
txt_h = Printer.TextHeight(Artikel)

If Len(Artikel) > 6 Then
Printer.Font = “Arial Narrow”
Printer.FontBold = True
Printer.FontItalic = False
Printer.FontSize = 20 ‘A small, 6-point font
End If
Printer.CurrentX = 5 + LeftMargin
Printer.CurrentY = 1 * LineSpacing – 5
Printer.Print Artikel

Printer.Font = “Arial Black”
Printer.FontBold = True
Printer.FontItalic = False
Printer.FontSize = 20 ‘A small, 6-point font

‘printing warna
txt_w = Printer.TextWidth(Warna)
txt_h = Printer.TextHeight(Warna)
Printer.CurrentX = 5 + LeftMargin
Printer.CurrentY = 2 * LineSpacing – 5
Printer.Print Warna

‘printing Ukuran & Bulan Cetak
txt_w = Printer.TextWidth(Ukuran)
txt_h = Printer.TextHeight(Ukuran)
Printer.CurrentX = 5 + LeftMargin
Printer.CurrentY = 3 * LineSpacing – 5
Printer.FontSize = 20 ‘A small, 6-point font
Printer.Print Ukuran

Select Case Month(Now)
Case 1
BulanCetak = “A”
Case 2
BulanCetak = “B”
Case 3
BulanCetak = “C”
Case 4
BulanCetak = “D”
Case 5
BulanCetak = “E”
Case 6
BulanCetak = “F”
Case 7
BulanCetak = “G”
Case 8
BulanCetak = “H”
Case 9
BulanCetak = “I”
Case 10
BulanCetak = “J”
Case 11
BulanCetak = “K”
Case 12
BulanCetak = “L”
End Select

Select Case Year(Now)
Case 2016
BulanCetak = BulanCetak & “P”
Case 2017
BulanCetak = BulanCetak & “Q”
Case 2018
BulanCetak = BulanCetak & “R”
Case 2019
BulanCetak = BulanCetak & “S”
Case 2020
BulanCetak = BulanCetak & “T”
End Select

Printer.FontItalic = True
Printer.CurrentX = 20 + LeftMargin
Printer.CurrentY = 3 * LineSpacing – 3
Printer.FontSize = 14 ‘A small, 6-point font
Printer.Print BulanCetak

‘printing barcode
Printer.PaintPicture pic, (page_w / 2 – bar_w / 2) + LeftMargin, (page_h – bar_h) – 3 ‘The barcode image is centered on the page

‘Printer.NewPage ‘When printing on label printers like Zebra, we need to print each label on a new page
Next

Printer.EndDoc ‘The printer starts printing the job

‘insert print log
Dim rstBarcodePrint As ADODB.Recordset
Set rstBarcodePrint = New ADODB.Recordset
gString = “INSERT INTO barcode_print_single (barcode, username, printed) VALUES (‘” & Barcode & “‘,'” & user_name & “‘,'” & Format(Now, “yyyy-mm-dd h:mm:ss”) & “‘)”
‘MsgBox gString
Set rstBarcodePrint = cn.Execute(gString)

Tags:

contactwahyu on April 18th, 2016

Create an Action Script 2.0 Game
Options:
* Quiz Game : Many Questions stored, randomly chosen
* Arcade Game : Snake, PacMan (modify the script from the internet)
* RPG Text Base : Story needs to be created

Sprite redesigned using piskelapp.com or other online/offline tool

Timeline:
4x Session – Submit Your Project before the semester exam

Resource:
http://keepdsmile.com/stuff/snake.php
http://keepdsmile.com/stuff/pacman.php

Tags: ,

contactwahyu on April 18th, 2016

I always feel honored to become 12IB1 PC Teacher. Even though I’ve spent with these wonderful students for two periods, still it’s not enough to know them personally. We have cheerful Aileen, that always become the energy’s source of the class. Albert, Alvin and Nathan who are mostly quiet 🙂 Tiffy with her great performance in cheerleader. Clara with her art talent. James who finally finish all of his task 🙂 Sadha and Jeff who always diligent. Amanda and Sheena, people will envy to see their togetherness 🙂 Faye who has a very beautiful voice. Kathleen, who always become a good inspiration to others. Daniel, a computer science guy 🙂 Daryan who always strong, even in his most difficulties situation in his life. Justin, the basketball guy 🙂 Marvin, who has awesome music talent. Feli, who always struggle to come early #NoOffense 🙂 and Sellina who always care and reminds the class for important things. I just wanna say thank you for the time that we spent together and I’m looking forward to see you guys again in the future, when you have become a man and woman who has pride of your own and (probably) a family of your own too 🙂 Always become a good people that fear of God and surrender all things into Him. Last, but not least, good luck with your final exam and I wish you will pass with excellent score!

Tags:

contactwahyu on March 30th, 2016

A.

  1. State one example of a peripheral that might be attached to a personal computer (PC), but not always.
  2. Outline 2 significant purposes of a network.
  3. Describe one advantage of using a PC in stand-alone mode, not attached to a network.
  4. Outline what the term human resources means in a computer system.
  5. Explain why computer systems require both hardware and software.

B.  Assume that a student is searching for news articles about automobile manufacturing in China.
The student is using a wireless connection at a school.

  1. Describe what the term client refers to in this situation.
  2. Explain the purpose of a DNS server during this scenario.
  3. Outline 2 different places that contain routers that are being used by the student.
  4. Explain how a firewall might provide a use service in this situation.
  5. Describe the role of a web-server in this situation.

C.

  1. Describe a situation when new software developments would be a disadvantage for an Internet user.
  2. Explain the ethical responsibilities of the software industry regarding benefiting and disadvantaging Internet users.

D.  Imagine that a new automated online ticketing system is being developed for people who wish to reserve and purchase airline tickets.

  1. Outline 3 different groups of stakeholders for this system.
  2. Describe 2 ways that needs and wishes can be collected before this system is designed.
  3. Describe 2 hardware issues that must be considered when designing this system.
  4. Describe how end-users can be involved in testing and debugging the software for this system.

E.  Assume that a school wishes to install a set of networked printers, enabling teachers and students to print documents in color and/or black and white.  The school already has a LAN,  and wishes to add 10-20 new printers.

  1. Describe how current systems could be studied during the analysis phase.
  2. Describe how literature searches might be helpful during the analysis and design phases.
  3. Outline some organizational capabilities that should be considered during the design phase.
  4. Assume that the school wishes to allow printing from teachers’ PCs that are attached to the school’s LAN, as well as printing from laptops that are using the schools WIFI network.  Draw a data-flow-diagram showing how the most important components interact with each other.

F.

  1. Outline 2 advantages of constructing a prototype before writing a computer program.
  2. Explain why software development is usually an iterative process.
  3. Explain two possible undesirable consequences of not involving the end-user
    in the design process.

G.  Assume that a school will purchase a new computer system that is used to help students apply to universities.  It helps the counselors keep track of which students have completed various stages in the application process. It also includes communication software that can transmit information like transcripts and teacher recommendations from the school to a university.

  1. Explain two reasons why security is a significant issue in this system.
  2. Outline two ethical issues connected to user training and/or lack of user training.
  3. Outline two usability issues that the school should consider before
    choosing a new system.

H.

  1. Define the term usability.
  2. Explain the importance of learn-ability as it relates to usability.
  3. Outline two common usability issues connected to cell-phones – do NOT include issues connected to any specific disabilities like old age or lack of hands. You must discuss usability problems that “normal” people experience.
  4. Explain two significant differences between electronic digital devices and other electrical devices that are NOT digital.  Examples would help significantly here. Outline two accessibility features that would be appropriate to improve the usability of a personal computer for a user who has only one hand. Outline two usability problems that have prevented voice recognition systems from becoming more widespread in the computer industry.

I.   Google is trying to market a self-driving car.  This would be particularly useful for blind people who wish to have their own car and enjoy the freedom and mobility that it provides.

  1. Outline 3 sets of stakeholders for the Google Car System.
  2. Describe 2 ethical issues associated with this system.
  3. Describe 2 economic issues associated with the Google Car System.

====

1. Identify two installation processes for a new system. [2 marks]

2. Explain how data is exchanged between RAM, the CPU, and cache memory. [2 marks]

3. Describe how a number in base n would be converted to decimal. [2 marks]

4.
(a) Convert the decimal number 72 to binary. [1 mark]
(b) Convert the binary number 01011100 to hexadecimal (base 16). [1 mark]

5. Describe two types of data that would be used when testing an application. [2 marks]

6. Outline a software solution that can reduce the amount of time required [2 marks]
to transmit data in a Wide Area Network.

7. Explain what pseudo-code is and when it is used. [2 marks]

8. Outline one advantage of creating a prototype before designing a computer [2 marks]
system.

9. Explain the rationale for first introducing a cache to CPU architectures, [2 marks]
and the resulting benefit from utilizing a cache.

#10

The GOOD STUFF company has a web-site, where anybody can place orders for products.
To place an order, the customer must:
– choose a product
– enter customer name
– enter customer’s address
– enter a credit card number

The order is then printed on paper and sent to a warehouse, where the products are packaged and delivered. Orders are shipped without any verification.

(a) Outline how data validation might be used during the ordering process. [1 mark]

(b) Explain the difference between data validation and data verification. [2 marks]

(c) Outline how the web-server can securely store the user’s private data,
preventing GOOD STUFF employees from stealing and misusing bank information. [2 marks]

The GOOD STUFF company would like to build a more ambitious version of the website which, among other features, will better facilitate cooperation with their business partners.

(d) Identify the relevant stakeholders when planning the new system. [2 marks]

(e) Explain the possible consequences of failing to involve the end-user in the [3 marks]
design process.

#11

(a) Outline how a Bubble Sort algorithm functions. [2 marks]

(b) Assume that a Bubble Sort algorithm requires 10 seconds to sort an array [2 marks]
containing 2 million numbers.
State approximately how long the same algorithm would require to sort 8 million numbers.

(c) Using pseudocode, construct an algorithm that finds the LARGEST value [4 marks]
in an array that contains 1 million numbers. Assume that the numbers are already stored in an array named DATA. The numbers in the array are in random order.

(d) Describe two ways to perform a search on the data in part (c). [2 marks]

#12

A college occupies a building on three levels. A computer network, using wires, is in place but needs to be extended. It is suggested that the current system be replaced by a wireless network which provides connection to a file server and offers support for off-campus staff who need to access network resources.

(a) Describe how communication over the network is broken down into different [3 marks]
layers.

(b) State a network technology that could provide secure access to the remote staff. [1 mark]

(c) Outline the advantages and disadvantages of wireless networking. [4 marks]

(d) Describe two methods for making the network secure. [2 marks]

#13
The flowchart below represents an algorithm that displays a sequence of numbers.
The word “even” means that a number is evenly divisible by 2.

flowchart

(a) Read the algorithm and state the sequence of numbers that it produces. [4 marks]

(b) Construct an algorithm using pseudo-code that sums the following numbers. [6 marks]
2 + 4 + 8 + 16 + 32 + 64 + …. + 65536

#14
(a) Define linked-list. [2 marks]

(b) Explain the steps needed to add a node to a linked list. [4 marks]
Use diagrams to show adding a note at front, middle, and end.

(c) Explain the steps needed to remove a node to a linked list. [4 marks]
Use diagrams to show removing a note from front, middle, and end.

(d) Explain what is meant by a circular linked list. [2 marks]

#15
There are many possible ways to store a list of data in a computer. One possibility is to use an array. Another possibility is to use a collection. An array is a static data structure, whereas a collection is a dynamic data structure.

(a) Explain the major difference between static and dynamic data structures. [2 marks]

A stack is a list with specific access methods:
– push(DATA) is used to put a value into a stack
– pop() is used to remove an item from a stack

Study the following algorithm.
// Assume INFO is a stack that is empty
// Assume NAMES is an array containing 5 names
NAMES = [“Al”,”Betty”,”Carl”,”Deb”,”Ed”]
loop C from 0 to 4
DATA = NAMES[C]
INFO.push(DATA)
end loop
loop while not INFO.isEmpty()
DATA = INFO.pop()
output DATA
end loop

(b) State what will be displayed by the algorithm above. [3 marks]

(c) Explain the essential differences between a stack and a queue. [2 marks]

The diagram below shows a Linked-List, with appropriate pointers.

linkedlist

(d) Explain the meaning of “null” in the diagram above. [1 mark]

(e) Explain what would be accomplished by the following command:
HEAD = HEAD.next [2 marks]

#16
Computational thinking involves using the capabilities of one’s (human) brain and the capabilities of computer ‘brains’ to represent and solve problems and accomplish tasks.

Discuss five aspects of computational thinking. [10 marks]

#17

Below is a balanced binary search tree.

btree

(a) State what would be printed by a PRE-ORDER traversal of this tree. [2 marks]

(b) Explain where a new node containing “Louise” would be added to this tree. [1 mark]

(c) Explain why deleting a node from a binary-search tree could be significantly more complex than adding a new node. [2 marks]

(d) Draw a binary tree which correctly represents this formula:
(a + b) / (c – d*e ) [3 marks]

(e) Look at your answer to (d). State what would be printed by a POST-ORDER traversal of the formula tree. [2 marks]


Paper 3 (CGI) HL ONLY

Pacific FX is working on “a computer game to be played on ordinary home computers and a short animated commercial.”
(1)
Explain the difference between “rendering in real time” and “completely prepared offline”, including specific reference to which method applies to which one of the products.
[4 marks]
(2)
Explain what “keyframes” are. [2 marks]
(3)
Explain what the “uncanny valley effect” is, including a specific example of where this might be a significant issue, with specific reference to video games and/or animated commericals. [3 marks]
(4)
On p. 5 it says “because scanline rendering is an embarrassingly parallel algorithm it is particularly suited to be processed by GPUs.” Explain what the term “embarassingly parallel algorithm” means, including a specific example of how this could be useful in a GPU. [3 marks]
(5)
(a) Explain what the term “motion capture” means. [3 marks]
(b) Explain why “motion capture” is less useful in a video game than when making a movie.
[2 marks]
(6)
(a) Explain what “rendering farms” are. [2 marks]
(b) Discuss whether “rendering farms” are more useful in video game production or more useful for creating a short animated commercial. [3 marks]
(7)
In the Animation Production Pipeline, some tasks can be performed simultaneously with some other tasks, while some tasks must be completed before other tasks start.
Choose one task than can be performed simultaneously with another task, but which must be completed before another task. In each case, explain why this is the case. [4 marks]
(8)
“Pacific FX has employed some computer science graduates who are currently undergoing training. Xiao-Ling explained that as part of this training course they look in detail at various ethical considerations that a responsible company should take into account when developing their CGI projects.”

The 12-mark question will be based on the challenges faced. Here are some of the questions (I found on the Internet) on what you could be asked.
To prepare a report on the different animation algorithm currently being used and how they might change in the future

  1. What are the current animation algorithms?
  2. What is scan-line rendering algorithm?
  3. What is ray-tracing algorithm?
  4. Investigate the techniques of motion capture as a viable option for their commercial project
  5. Investigate the demands made by the various processes and algorithms available.
  6. Prepare the ethics module for the training course.
  7. Incorporate new techniques as they arise.
  8. Why should they need to change current algorithm? What is driving this need for change?
  9. How will changes to algorithm meet this need? What will the changes be?
  10. What are the countermeasures and why do they work?
  11. “Xiao-Ling and Pacifi c FX’s challenges for the immediate future are to investigate the demands made by the various processes and algorithms available”. (Page 5) Explain in details scanline rendering and ray-tracing algorithms for use in the computer game project.
  12. “Pacific FX has employed some computer science graduates who are currently undergoing training. Xiao-Ling explained that as part of this training course they look in detail at various ethical considerations that a responsible company should take into account when developing their CGI projects.” Ignoring financial issues, discuss one ethical issue that requires specific care and consideration when creating a short animated commercial.

Tags: , ,

contactwahyu on March 7th, 2016

Membuat landscape daratan berbukit

Ikuti langkah2 berikut ini:

* Klik menu File – User Preferences, klik Addons dan pilih Add Mesh, aktifkan ANT Landscape
* Hapus object kubus yang merupakan object default [pada saat kita mengaktifkan Blender
* Tekan SHIFT+A, pilih Mesh – Landscape, atur parameter Subdivision=64 dan Mesh Size=8
* Atur Height=2 dan Plateau=3
* Pilih Modifier Subdivision Surface, isikan nilai View=2 (Modifier ada di deretan icon Material dan Texture)
* Pilih Texture, klik New, pilih Type=Distorted Noise, size = 0.25, ganti nama tekstur dengan nama bukit
* Pilih Modifier Displace, atur Texture=bukit, strength=0.1
* Render image

Tags:

contactwahyu on March 2nd, 2016

Materi yang ingin dipelajari
– FOKUS: Web database versi Android
– Android Hybrid vs Android Native Code
– Tool Android yang digunakan (Eclipse vs Android Studio)
– AVD (Android Virtual Device) GenyMotion/VirtualBox
– User Interface
– Bagaimana membuat aplikasi tampak elegan dan profesional
– Compatibilitas antara Device Android yang satu dengan lainnya (misal Smartphone dengan Tablet)
– Compatibilitas antara OS Android Gingerbread, Honeycomb, Jellybean, KitKat, Lollypop
– Penanganan Image di Android – image dr URL
– News, dicapture dari web address, berupa image dan informasi teks
– Foto Gallery, bagaimana pengaturannya di Android
– Share ke Sosial Media dengan klik simple icon (Instagram, Twitter, Facebook dll)
– Optimasi pertukaran data antara Android dan Web Server
– Baca format file PDF di Android (HeartNews), file PDF tinggal kita upload ke web, Android baca dari URL
– Push Notifications (GCM/Parse) – management dari web untuk send ke user tertentu atau semua user yang pakai apps, bisa juga dibuat reminder, tanpa trigger user.
– Teknik yang ingin dipelajari: Navigation Drawer, Tab Host
– Update apps, nantinya harus bisa dari Notifications

Tags:

contactwahyu on February 23rd, 2016

jisso-phase-one

 

jisso-phase-two

Tags: ,

contactwahyu on February 9th, 2016

COMPUTER SECURITY ASSIGNMENT!

Construct a program that will be displaying some messages in your friend’s computer.

Please note that please conduct a research first before put your plan to your task list, to make sure that it is doable or not.

The Task List could be as follows:
* The tool/ software used: Visual Basic.
* The target system: Windows Operating System.
* The target person: My friend
* The message: will open calculator every hour, along with the message that “Math is Fun” or things like that.
* The trigger: put trigger on the Registry
* Social Engineering: copy important file in the disk

Submit these task list to the teacher!

After the trial, submit your code, along with the report of the result!

Please follow these instructions!
* You Will NOT use this assignment to do anything bad to your target!
* You Will set an auto destruct (remove your file, clean your key in registry, if any) once the program runs! or doing it manually!
* You Will then explain to the target that this is part of Computer Science Project!
* You are ONLY allowed to display text/message or any other usual activities. Removing files/folders or any other negative impacts are strictly PROHIBITED. You are the ONLY person who take FULL RESPONSIBILITIES of your own code!

Tags: , ,

contactwahyu on February 4th, 2016

For Computer Science Extended Essay, the result of Viva Voce will determine (if possible) the mark in Criterion D and Criterion K, so get ready with the questions that the supervisor will ask to you

The common questions:

  • What is your RQ (Research Question)?
  • Why do you think your RQ is feasible for Computer Science Extended Essay?
  • There are so many Computer Science’s topic, why do you choose this one? (your answer can be: because you are mastering the topic, or you like/interested with the topic, or the topic is somehow became a popular topic at the time when you wrote your essay)
  • How did you conduct your research?
  • How much time you spent in total (roughly) to write your essay?
  • Have you conduct your own experiment/programming?
  • Have your RQ finally answered? Explain briefly!

Specific questions:

“Analyzing territory scoring algorithm with Minimax to develop game Amazon”
(Clark Makmur Suwidjaja)

Can you describe about the game? (you can explain from its rule, the purpose of the game and the differences compared with chess)
What do you know about space complexity and time complexity?
How do you draw the game board into a programming language? (or you may say, how to initialize the game)
What does Territory Scoring mean?
Can you explain how the Minimax can be used in Territory Scoring Algorithm? (is it part of it)
In your opinion, why Minimax algorithm has used recursive method?
Explain the three basic steps for each turn!
What is your conclusion?
Supervisor’s Feedback: Make a standard/better document format!
Student’s Feedback: Do you have something to say related with your essay?

How effective is the sequential Clark and Wright’s savings algorithm in finding a sub-optimal solution to the multi depot vehicle routing problem compared with brute-force method?
(Daniel Gonawan)

What conditions that must be fulfilled for the VRP?
Explain the differences between VRP and MDVRP!
Explain each algorithm! (Clark and Wright and brute-force)
What is the purpose of method pow in Math object?
What does the keyword @Override mean?
From the percentage error chart, why is the result different? (The p02 is somehow has largest value)
Student’s Feedback: Do you have something to say related with your essay?

How do metamorphic viruses change its form, and how do anti-virus programs detect metamorphic viruses?
(Daryan Sugandhi)

What string signatures mean? Why do viruses need string signatures?
What the difference between Polymorphic and Metamorphic?
Which programming language normally use to create Polymorphic Virus?
How do viruses evolve? (You can answer the process, whether it is automatically or what)
What’s the characteristic of Win32.Evol?
Can you describe how the Anti Virus normally detect the Metamorphic Virus?
Supervisor’s Feedback: Change the term ‘Algorithm’ to ‘Flow Chart’

Tags: ,

contactwahyu on January 31st, 2016

12552552_10153346566753601_840253970311130966_n

Tags: ,

contactwahyu on January 29th, 2016

Berikut ini adalah script untuk mengubah font color dan size dalam slide powerpoint dengan menggunakan VBA Macro

Sub adjust()
Dim oSld As Slide
Dim oShp As Shape
Dim oShapes As Shapes

For Each oSld In ActivePresentation.Slides
Set oShapes = oSld.Shapes
For Each oShp In oShapes
If oShp.HasTextFrame Then
If oShp.TextFrame.HasText Then
oShp.TextFrame.TextRange.Font.Color.RGB = RGB(255, 255, B)
oShp.TextFrame.TextRange.Characters.Font.Size = 24
oShp.TextFrame.VerticalAnchor = msoAnchorBottom
End If
End If
Next oShp
Next oSld
End Sub

contactwahyu on January 29th, 2016

Berikut ini adalah script untuk mengubah warna shape dalam slide powerpoint dengan menggunakan VBA Macro

Sub adjust()
Dim oSh As Shape
Dim oSl As Slide

‘ Look at each slide in the current presentation:
For Each oSl In ActivePresentation.Slides

‘ Look at each shape on each slide:
For Each oSh In oSl.Shapes

oSh.Fill.ForeColor.RGB = RGB(0, 0, 0)

Next oSh

Next oSl
End Sub

Tags:

contactwahyu on January 27th, 2016

Tags:

contactwahyu on January 27th, 2016

Hal ini saya temukan saat mengedit subtitle untuk drama colossal Edelweiss Messenger dengan menggunakan Power Point. Semua subtitle pada awalnya berada di tengah slide, namun karena sesuatu alasan, teksnya diminta untuk digeser ke bawah. Saat browsing di internet, saya tidak menemukan cara yang cocok untuk menggeser object langsung automatic seluruh slides (total slidenya ada 300 lebih!!!) Untuk menggeser satu persatu jelas akan makan waktu lama dan juga it’s kind of waste of time!!! Jadi, satu-satunya kemungkinan yang ada menurut saya adalah lewat Macro VBA (Visual Basic Application). Setelah browsing kesana kemari, ada script yang bisa dimasukkan ke Macro sebagai berikut:

Sub align_bottom()
Dim osld As Slide
Dim oshp As Shape
Dim sngPictop As Single
For Each osld In ActivePresentation.Slides
For Each oshp In osld.Shapes
If oshp.Type <> msoTextBox Then
oshp.LockAspectRatio = msoTrue
oshp.Width = ActivePresentation.PageSetup.SlideWidth
oshp.Top = ActivePresentation.PageSetup.SlideHeight – oshp.Height
oshp.Left = 0
sngPictop = oshp.Top
End If
Next
For Each oshp In osld.Shapes
If oshp.Type = msoTextBox Then
oshp.Left = 0
oshp.Top = sngPictop – (oshp.Height)
End If
Next
Next
End Sub

Untuk membuat align bottom, kita modifikasi satu baris menjadi sebagai berikut:

oshp.Top = sngPictop + (ActivePresentation.PageSetup.SlideHeight – oshp.Height)

Setelah itu tinggal kita RUN Macronya dan … voila! seluruh object yang tadinya kita set di tengah otomatis bergeser ke bawah semua. Semoga bermanfaat.

Tags:

contactwahyu on January 19th, 2016

“Titip uang bisa jadi akan berkurang tapi titip omongan bisa jadi malah lebih”

1. Sehabis pulang dari sawah, kerbau rebahan di kandang dengan wajah capek dan nafas yang berat. Datanglah anjing.
Kerbau lalu berucap :
“Ahh teman lama, aku sungguh capek dan besok mau istirahat sehari”.

2. Anjing pergi dan jumpa kucing di sudut tembok, dan berkata :
“Tadi saya jumpa kerbau, dia besok mau istirahat dulu.
Pantaslah, sebab boss kasih kerjaan terlalu berat sih“.

3. Kucing lalu cerita ke kambing dan berkata :
Kerbau komplain boss kasih kerja terlalu banyak & berat. Besok gak mau kerja lagi“.

4. Kambing jumpa ayam dan berucap :
Kerbau gak suka kerja untuk boss lagi, sebab mungkin ada boss lain yang lebih baik”.

5. Ayam jumpa monyet dan berkata : “Kerbau gak akan kerja untuk bossnya dan ingin cari kerja di tempat yang lain“.

6. Saat makan malam monyet jumpa boss dan berkata :
“Boss, si kerbau akhir-akhir ini sudah berubah sifatnya dan mau meninggalkan boss untuk kerja dengan boss lain.”

7. Mendengar ucapan monyet, boss marah besar dan membunuh si kerbau karena dinilai telah mengkhianatinya.

Ucapan asli kerbau :

“SAYA SUNGGUH CAPEK, DAN BESOK MAU ISTIRAHAT SEHARI”.

Lewat beberapa teman akhirnya ucapan ini sampai ke boss dan pernyataan kerbau telah berubah menjadi :

“Si Kerbau akhir-akhir ini telah berubah sifatnya dan mau meninggalkan boss untuk kerja dengan boss lain”.

Sangat baik untuk disimak :

• Ada kalanya suatu ucapan harus berhenti (stop) sampai telinga kita saja. Tidak perlu diteruskan ke orang lain.

• Jangan percaya begitu saja apa yang dikatakan orang lain, meskipun itu orang terdekat kita. Kita perlu check & recheck kebenarannya sebelum bertindak.

• Kebiasaan melanjutkan perkataan orang lain dengan kecenderungan menambahi/mengurangi, bahkan menggantinya berdasarkan PERSEPSI SENDIRI bisa berakibat fatal.

• Bila ragu-ragu akan ucapan seseorang yang disampaikan via orang lain, sebaiknya kita langsung bertanya pada yang bersangkutan.

Bila ingin menyampaikan sesuatu kepada orang lain, baik juga memakai 3 kriteria yang harus dipenuhi :
– Apakah benar ?
– Apakah baik ?
– Apakah berguna ?

Bila semua jawabannya “YA”, sampaikanlah…

Mudah2 an ini menjadikan kita lebih memahami akan pentingnya kebenaran sebuah berita serta membuat kita lebih berhati-hati lagi dalam menyampaikan informasi.

contactwahyu on January 19th, 2016

Grade 12IPA1

Group 1: Selly dan Angel
Group 2: Andrew dan Ricky
Group 3: Dicky dan Timothy
Group 4: Darren dan Richard
Group 5: Cia, Nane dan Indira

Grade 12IPA2

Group 1: JA dan Charlie
Group 2: Diva dan J.O.
Group 3: Artono dan Sam
Group 4: Anne dan Christine
Group 5: Rio dan Leo
Group 6: David dan Priscil
Group 7: Sabrina dan Nana

Grade 12IPS

Group 1: Ray dan James
Group 2: Sally dan Lina
Group 3: Siti dan Kumala
Group 4: Nafta dan Anas
Group 5: Buton dan Kenny
Group 6: Shania dan SK
Group 7: Wilson dan Hau
Group 8: Kelvin dan Nathan
Group 9: Willy dan Matthew

Tags: , ,