F.A.Q Scuba Diving

  1. What is scuba diving?


Scuba diving is an underwater sport that uses particular equipment and techniques to perform subsurface breathing and movement. The equipment consists of:

  • Oxygen cylinder,
  • Buoyancy Control Device (BCD), to hold the cylinder and adjust the buoyancy level,
  • Air regulator, to connect the cylinder to the mouth,
  • Diving suits, masks, and swimming fins,
  • Weighing Belt,
  • Dive computer, to calculate pressure, depth, and direction.

Scuba is an acronym for ‘Self Contained Underwater Breathing Apparatus’. This emphasizes the importance of the mentioned equipment for the activity itself.

Some techniques are required to be mastered before doing scuba diving, which are buoyancy control, underwater breathing, ear equalization, and subsurface navigation.


  1. Why do I need certain qualification to do scuba diving?


It is highly recommended to be certified in scuba diving before doing this sport.

Scuba diving is a risky activity, especially for those who don’t understand the techniques and equipment. There are many reported fatal accidents in scuba diving. Most of the cases involve improper use of the equipment and wrong execution of techniques.

The certification is a proof that a person understands well the purpose of each equipment and technique, and how to apply them in various situation during the scuba diving activity.

You need to show your certificate to rent the equipments from a dive center.


  1. How do I get scuba diving certification?


Initially, you need to take Open Water Diver course from internationally recognized scuba diving associations. From there, you can gradually continue to Advanced Open Water Diver, Rescue Diver, Master Scuba Diver, and even become Instructor. Besides, there are also additional specialty diver courses, like Ice Diver, Underwater Photographer, etc.

In order to be eligible to take this course, you must be above 10 years old and able to demonstrate continuous 200 meters swimming.

The scuba diving courses are available on your local dive centers. Normally the dive centers are affiliated with one of international scuba diving associations.


  1. Can I do scuba diving without certification?


Yes, you can. Most dive resorts provide “Discover” scuba diving program that allows people to do “instant” scuba diving with direct supervision from a professional.

The instructor will teach you intensively about scuba diving in short time before going underwater. One instructor will be assigned for maximum of two persons, to do close monitoring in order to ensure your safety.

This program’s fee is more expensive than if you have already had certification. Also, you can’t move freely as the instructor has to follow wherever you go. So, consider this option only if you want to do it once.


  1. Where is the nearest dive center from my place?


International scuba diving associations, such as PADI, SSI, and NAUI, have affiliation with many dive centers in the world. There’s big chance that it’s also in your home town.

Please refer to each scuba diving association’s website to check the nearest dive center:


Some dive centers operate without having valid license, or are not affiliated with any internationally recognized association. You should not use their service, as there’s no guarantee that their equipments are periodically inspected. Remember that safety is the first priority in scuba diving.

Disclaimer: Please note that all the information mentioned above is accurate from the perspective of the writer at the time of the FAQ being written. In case of there’s information difference or update from any official scuba diving organizations, please refer to them or confirm.



  1. PADI Scuba Diver courses website: http://www.padi.com/scuba/padi-courses/diver-level-courses/view-all-padi-courses/scuba-diver/default.aspx
  2. Richardson D. (2008) Open Water Diver Manual, PADI.

A share of a lovely travel to Rajaampat

Been awhile since my last post on this blog. My mind was occupied with the PADI certification excitement. Yes, I just got my qualification in scuba diving. A first preparation to the plan that followed, an escape trip to paradise. Not really, the destination was actually Rajaampat, a hidden gemstone in the east of Indonesia. An array of islands to the west of Papua, in where we can see beauties both underwater and above its surface.

For your guideous information, we, 13 brave young men and women – marked our five days of lifetime floating on a sailing boat circa de chain of Rajaampat islands, where we witnessed originality in God’s pure creation. To be frank, it was not easy for urban minds like we are to spend the life of hipster even for a day. Luckily, the organizer, he who identified himself as “Deni Rajaampat” in #facebook was preparing everything to meet our standard of drooling – honestly we only knew 5S along the tour, it’s Sun Swim Sleep Supper and Shit :p

Rajaampat is one of “Kabupaten” in West Papua. It consists of hundreds of smaller islands that are surrounded by four main islands – Waigeo, Salawati, Batanta, and Misool. Formerly, Rajaampat, which means 4 Kings in local, was four kingdoms linked to Ternate Sultanate. Nowadays, Rajaampat area is well-known for its huge amount of biodiversity features – more than thousands of fish species and about 75% of all coral species in the world are living in its underwater.

About the trip itself, it took around 12 hours from Sorong to reach Rajaampat. As we set at 6 o’clock from the city, so we only got to the site in the evening. The real fun started on the second day. Four of us – Moja, Kanya, Dian, and myself decided to experience its underwater for one full tank of oxygen. It took around sixty minutes for us to consume the condensed air underwater (so shocked that the guides from Papua Diving only consumed less than half of what we took, hail Mr. Jacobus and his companion). So unlucky we didn’t meet Sharks, Manta rays, and turtles there 😦 (people from Papua Diving said it’s huge chance to say hello to those creatures mentioned earlier). At least we managed to see different schools of beautiful fishes and colorful corals – it’s literally like a flower garden over there.

Other than that, we spent our most memorable 5 days doing snorkel and eating fresh fish with Manado cook style (missed sambal Dabu-Dabu already) from sunrise to sunset, and playing Chap-Sa card game and rewinding the daytime story after that time.

Ah, not to forget, we also climbed the most beautiful hikings on day four. The first rock we climbed was an easy but long one. It took around an hour and half to reach the summit and coming back to boat. On the top, I saw the most beautiful scenery that these two eyes ever seen. How come that cones of islands seem floating above the surface of glass clear of sea water. It’s a clever God that put this kind of view hidden in the remotest area, so that only the most observing mind of us could experience this invaluable scenery.

And just like a good movie, it ends soon as we get to the climax. So as our five days itinerary. It reached the end before we’re fully satisfied. We wanted more. But, reality conquered us all and reminded that we got plenty things to do as we resume from the holiday leave. It ends too soon ;(

From now on, pending task is to present the photographs to the cloud 🙂

Lompat Kodok

Accomplished SaaS course from UC Berkeley

Earlier this whole March, I joined an online free course from University California, Berkeley. The topic is Software as a Service, an interesting issue that just become popular lately. The program is hosted in https://www.coursera.org/ , as a part of joint experiment by three top Universities of USA, Stanford University; University of Michigan; and UC Berkeley.

For SaaS course itself, I think they prepared it quite good that it covers enough part of the issue in just 5 weeks. Thanks to Armando Fox and David Patterson, two professors of UCB, as with their efforts, this great online course is possible. The program itself is delivered in Video and .ppt presentation materials that covers precisely five chapters; from introduction to Software as a Service to some kinds of agile development methods, which are Behaviour Driven Development and Test Driven Development.

Throughout the course, the two professors oblige students to use Ruby (and Rails) as a language for assignment projects. Two choices are whether we want to work in a pre-built Virtual Machine or from the Amazon Web Service (they partnered with AWS to give away $10 voucher for students who passed first assignment). It also encourages students to use heroku, a popular online Platform as a Service (PaaS), that also supports Ruby on Rails for deployment.

There are four assignments and three quizzes that will determine students’ final score. For the first assignment, it’s designed to make the students get familiar with Ruby. To be frank, this Ruby thing is new to me, and it took one full weekend for me to get used with the language (it’s more flexible than Python, good but a little bit confusing). Second assignment asked students to improve a “Rotten Tomatoes”-like website with added functionalities (this one is called Rotten Potatoes 😉 ), and deploy it to the heroku. Btw, here’s my attainments for the project http://narutocuk.herokuapp.com/movies. Last but not least, the third and last assignments tested us the knowledge of Behaviour Driven Development and Test Driven Development by using handy frameworks called cucumber and RSpec. So, in this context, during a software development, the developers (or teams) are encouraged to develop set of tests first before actually developing the functionalities. Also, cucumber is a great tool where we can define set of tests in plain English text:

Scenario: restrict to movies with 'PG' or 'R' ratings
 Given I check the following ratings: PG, R
 And I uncheck the following ratings: G, PG-13, NC-17
 When I press "Refresh"
 Then I should see the following ratings: PG, R
 And I should not see the following ratings: G, PG-13, NC-17

This cucumber tool depends greatly on extensive Regular Expression string parsings. It helps to minimize technical gap between development team and the clients. And as for the score, I did a quite good job on the assignments (deducted points on last assignment as I submitted it late, and perfect score on others), but unfortunately not on the quizzes. I didn’t realize that it was a one-time attempt test, that when I did it and had an errand, I left many numbers unanswered and it gave me a bad score.

Anyway I finished the course until the end, and roughly two weeks after the last quiz, a mail came to my gmail with a Statement of Accomplishment in pdf format. I think it’s fair enough for me, and I got a new knowledge too 🙂

Here’s how the Certificate looks like: SaaS Class Statement of Accomplishment

Machine to Machine Technology

M2M is about enabling the flow of data between machines and machines andultimately machines and people. Regardless of the type of machine or data, information usually flows in the same general way — from a machine over a network, and then through a gateway to a system where it can be reviewed and acted on.

Within that basic framework, there are many different choices to make suchas how the machine is connected, what type of communication is used, and how the data is used. Even though it can be complex, once a company knows what it wants to do with the data, the options for setting up the application are usually straightforward.

When it comes to the finer points of machine to machine communication, every deployment is unique. However, there are four basic stages that are common to just about every M2M application. Those components are:

  1. Collection of data
  2. Transmission of selected data through a communication network
  3. Assessment of the data
  4. Response to the available information

1) Collection of Data

The intelligence of a monitored machine may be as simple as a temperature sensor, level indicator or contact closure, or it may be an industrial computer system with a Modbus communication port.

The process of M2M communication begins with taking data out of a machine so that it can be analyzed and sent over a network. Monitoring a “dumb” machine may mean directly connecting to and monitoring one or more limit switches, contact closures or analog outputs. With an intelligent electronic device, it may be possible to simply connect to the equipment’s serial port and ask for the data.

The goal of the M2M hardware is to bridge the intelligence in the machine with the communication network.

An intelligent wireless data module is physically integrated with the monitored machine and programmed to understand the machine’s protocol (the way it sends and receives data).

If the monitored machine is configured as an intelligent master device, it may treat the M2M device as a simple wireless modem, loading it up with data and then instructing it to transmit that data to the network. If the machine is just a collection of switches and sensors or is an intelligent slave device, the M2M device can act as the master device. In this mode, it takes charge by periodically polling the device by reading the sensors and switches or by sending data requests through the serial port.

In a high end application like a major electric utility substation, it may be necessary to send a constant stream of real time data describing the machine or process. But in many cases, this is not necessary or worth the cost. In these cases, the M2M device should minimize the amount of data to be sent by constantly reviewing the data, comparing it against programmable
alarm limits or setpoints, and then only transmitting real time information when a reading is out-of-limits.

In addition the application will typically be programmed to send complete data updates on a time scheduled basis or anytime upon request from the web server.

2) Transmission of data through a communication network
There are several good options for transporting data from the remote equipment to the network operation center. The cellular network, telephone lines, and communication satellites are all common solutions.

The telephone may be the best choice if a line is already installed and the cost can be shared with other uses. Its disadvantage is usually the ongoing monthly cost and sometimes the cost and difficulty of installation.

Satellite may be the most expensive solution, but is often the best or only solution for monitoring equipment in very remote areas.

The wide spread coverage of the cellular network is the main reason M2M is getting so much attention these days, and it’s usually the method that fits best. There are several methods of sending data over the cellular network.
CDMA and GPRS are both widespread in North America today and their coverage areas continue to grow. The advantage of these systems is the ability to send large amounts of data frequently. The costs continue to drop.

Connecting to the cellular or satellite network typically requires the use of a gateway. A gateway receives the data from the wireless communication network and converts it so that it can be sent to the network operation center, often over the Internet or by a frame relay (phone line) connection. Data security features such as authentication and access control can be managed by the gateway and the application software.

The gateway also has an important role when the flow of data is reversed, going from a network to the machine for data requests and remote control. The gateway still functions as a protocol converter, but this time it takes high-bandwidth Internet protocols and converts them to low-bandwidth wireless protocols so the data is optimized for transfer over a cellular

For companies deploying an M2M application, the gateway, the application software, and the data warehouse can be housed internally or can be hosted by a third party in a network operations center. In many cases, the hosted model may be more attractive because of the high cost involved in setting up the infrastructure and managing the network. Since the upfront cost is often lower with the hosted model, the payback can be faster and the solution can be deployed in less time.

3) Assessment of the data

Data from a company’s networked machines usually shows up in one of two places: in an enterprise software application the company already uses, or in a standalone system designed specifically for M2M.

Today’s deployments tend to favor standalone systems for applications such as remote monitoring because most M2M application providers specialize in providing these and there can be additional costs involved with integrating new data into existing systems.

Still, the vast majority of opportunities for M2M center around taking data out of machines and integrating it with operational data. For example, remote monitoring data can be incorporated into customer-relationship management systems for logging service and maintenance history.

4) Response to the available information
1. Whether the application is standalone or part of a larger system, the common goal is to automate a business process by automating the flow of data to the people and systems that have a need to know. The technology should enable sending the right data to the right place in the right way depending on the circumstances. It should also present data to individual users based on their specific function in the business process. For example, an HVAC system monitor might e-mail a routine maintenance request for an adjustment or lubrication to Siegfred and an emergency voice call for a thrown belt or tripped breaker to Roy.

A modern farmer who has automated irrigation systems operating in different locations can now be constantly aware of their operation based on short messages that are relayed to his pager or cell phone.

Of course, none of this technology is specific to M2M; the whole purpose of business software is to keep people from having to do everything manually. The new element that M2M brings to the picture is that now companies have new data to work with, data that is central to the way they operate and the value they provide.

article are crawled from http://www.m2mcomm.com/about/what-is-m2m/index.html


the ugly duckling

I am the ugly duckling, and no one wants to play with me… Well, I don’t need them. If I can REACH you only, all my sorrows will disappear.

the duck

Publishing Open Source Project: Android Coming Holidays

git remote add origin git@github.com:antonrifco/Coming-Holidays.git

After finalizing fix and minor enhancement, now Coming Holidays Android App is Version 1.0. Good news, it’s also an Open Source Project now. It is hosted on https://github.com/antonrifco/Coming-Holidays
or, directly from github console: git@github.com:antonrifco/Coming-Holidays.git

Actually the application itself is quite simple. I made it only one week on after office hours. Even so, I hope by publishing it as Open Source, I can share the experience of developing Android Application with other Android die Hard fans.

Description about Coming Holidays v1.0 ( https://market.android.com/details?id=net.antonrifco.comingholidays ):

Waiting for Holidays?!? Install Coming Holidays App to track upcoming Holidays!
Coming Holidays helps users to track nearest Holidays (Public and Private one). A nice-looking countdown should inform users how near they are from a free fooling around day. Finally, an annoying daily alert at stress-peak time (2p.m) will persistently remind People that life is not Yet over. There’s still Upcoming Holidays..

About Coming Holidays Version 1.0:
-. Fix “Alert get up on random time”
-. Fix “Nearest holiday should always days after today 00:00”
-. Fix Incomplete Deleting leave problem
-. Project hosted as Open Source on https://github.com/antonrifco/Coming-Holidays yeayy!

Announcement Coming Holidays Android App Release Candidate-1


Waiting for Holidays?!? Install Coming Holidays App to track upcoming Holidays!
Coming Holidays helps users to track nearest Holidays (Public and Private one). A nice-looking countdown should inform users how near they are from a free fooling-around day. Finally, an annoying daily alert at stress-peak time (2p.m) will persistently remind People that life is not Yet over. There’s still Upcoming Holidays..

What’s in this version:

Version 0.9:

  • Keep track Holidays from following countries: China, Germany, France, Hongkong, Indonesia, India, Japan, South Korea, Singapore, UK, US
  • Automatically detect location (country) based on MCC of GSM (No GPS required)
  • Track upcoming Holidays and give Countdown
  • Able to add Personal Leaves to the list of Holidays
  • Give alert for Holidays until the next 3 days. Alert Notification will start at 2p.m local time.
  • Fun!

Download at: Android Market