Hello World, Nikon D800

Finally, the long-awaited moment is arrived.
Nikon D800 telah resmi diumumkan oleh Nikon. Yayyyyyy

Nikon D800 (depan - pcworld)

Dimulai dengan berita-berita dari nikonroumours.com sejak tengah tahun 2011 kemarin, pertanyaan mengenai pengganti kamera Nikon D3s/D300s/D700 sudah banyak merebak.
Contohnya link berikut ini:
August 24th: Nikon D700 and D3s successors (nikonrumours.com)

dan masih banyak lagi, tinggal ikutin saja tag d800 di nikonrumours.com yah

Nah, penerus keluarga full frame D3 sudah muncul bulan kemarin, Nikon D4 setelah sebelumnya Canon memperkenalkan Canon EOS 1Dx.
Penerus D300s, which is supposed to be D400? Masih velum ada kabar.
Nah, 7 Februari kemarin Nikon merilis berita mengenai flasgship kamera full frame dia yang kedua untuk tahun ini yaitu Nikon D800/D800E yang nota bene adalah penerus Nikon D700.

Nikon D800 (atas, pcworld)

Saya sendiri sebenarnya berminat dengan D700, sayang di Jakarta sudah susah nyarinya (terutama yang garansi Alta Nikindo). Padahal budget sudah disiapkan dan D90 tersayang juga sudah berpindah tangan. Karena saya sudah punya Sony NEX-5n untuk yang APS-C, target berikutnya emang full frame.

Yah apa daya D700 termasuk jajaran seri yang tidak diprosuksi lagi oleh Nikon (discontinue) termasuk D90. Ga heran sih, karena di Amerika sendiri D700 sudah out of stock sejak Q4 2001.

Dan sesuai dengan rumor, spek D800 inipun cukup wow. Mulai dari 36.3 megapixel (RAW Fx), 15.4 megapixel kalo mode DX. ISO 100 – 6400 yang bisa extend hingga 25,600. Saya sendiri sangat puas dengan kemampuan high ISO D700 yang saya gunakan waktu memotret Java Rocking Land 2001 (dan tentunya The Cranberries) kemarin.

Fitur-fitur yang ditawarkan D800 antara lain:

  • 36.3-megapixel FX-format CMOS sensor
  • 91,000-pixel RGB Matrix Metering System
  • Advanced scene recognition system
  • 51-point AF system (15 cross-type sensors)
  • Multiple AF modes (e.g., normal, wide area, face tracking, and subject tracking)
  • Full HD 1080p video, with full manual control and uncompressed HDMI output
  • ISO 100 to 6400 (50 to 25600 expanded)
  • Shooting in different aspect ratios (e.g., 5:4)
  • In-camera High Dynamic Range (HDR) image capture
  • 3.2-inch, 921,000-dot LCD monitor with automatic brightness control
  • HDMI port (8 bit, 4:2:2)
  • Dedicated headphone jack
  • Audio output level adjustment (30 steps)
  • High-fidelity audio recording control (levels set and monitored on LCD)
  • Stereo microphone jack
  • 4 fps continuous shooting (6 fps in DX mode using the optional battery pack)
  • USB 3.0 support

Nikon D800 bakal mask pasar sekitar bulan Maret dengan harga kisaran $2,999.95 (body only), sedangkan D800E akan meluncur pertengahan April dengan harga $3,300 (body only).

Duh, sepertinya saya harus berpikir ulang nih. Yang jelas mesti nabung tambahan lagi $1000 kalo pingin D800 ini. Dan begitu masuk Indonesia nanti ga tahu deh harganya jadi IDR berapa. Biyuh …. *pegangin akal*

Arrrghhhhhhh

Nikon D800 (belakang, pcworld)

Berikut ini contoh foto-foto hasil D800. Foto-foto ini adalah hasil ulasan dari situs gottabemobile.com

Nikon D800

Nikon D800, ISO 640, f4.5, 1/200 sec., AF-S NIKKOR 70-200mm f/2.8G ED VR II (Click for High Res D800 Sample)

Detil dari foto portrait di atas setelah 100% zoom

100% Crop of Nikon D800 Sample Image

100% Crop of Nikon D800 Sample Image

Referensi:

How To Tweets Your Current iTunes Track

Well, it’s nothing. Last Saturday I’ve stuck in office, have nothing to do but arranging my iTunes collection. Been awake since Friday night, and it seems my sleep disorder haven’t been healed yet :( So while i’m twittering i want also to use my current track played in my iTunes to be posted in twitter.

I remember i’ve made a small python script to do this couple years ago but lost the source code *facepalm* Hmmm, I think i gave the codes to @cothat and @rara79. But it will be rude to wake up those guys just for asking source codes :P

I rewrite it all over again, just to get me bored and hopefully sleep after that :P

Anyway, these are the codes that make it happen :)

You can make it simple and more robust though. I don’t put any exception to check whether my iTunes is running or not (yet) to prevent flooding my timeline with probably blank message :P

My previous version will run a loop and sleep couple of seconds. And within that loop it will check is the iTunes playing same song as previous or not. It will post to twitter if new song is detected :) Useful if you like to skip song in the middle.

[cc lang=’python’ ]
“””
simple Python Script to get current track being played in iTunes
and tweet it (and also update your FB status)
dependencies:
– py-appscript, Control AppleScriptable applications from Python
– tweepy, Twitter API for Python

Author: Nuri Abidin
Date: 2012-02-04
“””
from appscript import *
from decimal import *
from ConfigParser import ConfigParser
from optparse import OptionParser
from sys import exit
from time import strftime, sleep, localtime
import string, os, re, sys, tweepy

class nuyTwiTunes:
def __init__(self, config_file=””):
config = self.getconf(config_file)
self.twitter_consumer_key = config[‘consumer_key’]
self.twitter_consumer_secret = config[‘consumer_secret’]
self.twitter_access_token = config[‘access_token’]
self.twitter_token_secret = config[‘token_secret’]
self.print_console(‘Initiating the application…’)

# just printing formatted text to console
def print_console(self, s):
t = strftime(‘%Y-%m-%d – %X’)
print “%s %s” % (t,s)

# read the config file
def getconf(self, config_file):
param = {}
c = os.path.expanduser( config_file )

if not os.path.exists(c):
self.print_console(‘ERROR: No configuration file: %s’ % c)
exit(1)

conf = ConfigParser()
conf.read(c)

#read config items to dictionary
for section in conf.sections():
for items in conf.items(section):
param[items[0]] = items[1]
return param

# ‘read’ the current track being played in iTunes
def get_itunes_track(self):
myApp = app(‘iTunes’)
mySong = (“%s – %s” % (myApp.current_track.artist(), myApp.current_track.name()) )
songTime = myApp.current_track.time();
timeChunks = string.split(songTime, “:”)
playingTime = (Decimal(timeChunks[0]) * 60) + Decimal(timeChunks[1])
return mySong, playingTime

# post to twitter
def post_tweet(self, the_tweet=”Hai ^_^”):
auth = tweepy.OAuthHandler(self.twitter_consumer_key, self.twitter_consumer_secret)
auth.set_access_token(self.twitter_access_token, self.twitter_token_secret)
api = tweepy.API(auth)
api.update_status(the_tweet)

# post current iTunes track to twitter
def tweet_the_tunes(self):
# play and sleep until track changes
while True:
(track_name, play_time) = self.get_itunes_track()
tweet = “iPlay: %s ^_^ #fb” % (track_name)
self.print_console(“%s –%s seconds–” % (tweet,play_time) )
self.post_tweet(tweet)
sleep(play_time)

def main():
usage = “usage: %prog [options]”
parser = OptionParser(usage=usage)
parser.add_option(‘-c’, ‘–config’,
dest=”config_file”,
default=”nuy_tunes.conf”,
)
(options, args) = parser.parse_args()

try:
if options.config_file:
config_file = options.config_file
else:
config_file = “./nuy_tunes.conf”

my_tunes = nuyTwiTunes( config_file )
my_tunes.tweet_the_tunes()
except:
raise
parser.print_help()
exit(1)

if __name__ == “__main__”:
main()
[/cc]

and the configuration file is simply like this

[cc lang=’python’ ]
[twitter]
consumer_key = your_twitter_consumer_key
consumer_secret = your_twitter_consumer_secret
access_token = your_twitter_access_token
token_secret = your_twitter_token_secret
[/cc]

Once more thing …
You need to use a Mac to do this :P
Having one is a good thing :P

*yawn*
and blogging this script make me feel sleepy already …

Firefox 10

Jadi, weekend kemarin dengan koneksi internet seadanya saya coba update browser Mozilla Firefox macbook pro ke versi 10. Terbilang cukup telat sih karena rilisnya sendiri sekitar 31 Januari kemarin. Yah apa boleh buat, updatenya saya set manual :)

firefox 10

 

Di versi 10 ini Mozilla menawarkan beragam fitur khususnya untuk para web developer, sementara itu untuk pengguna biasa adalah kecepatan update (yang lebih cepat tentunya) dan kompatibilitas yang lebih baik akan add-on add-on yang ada sekarang. Yang dimaksud di sini adalah sebagian besar add-ons Firefox versi 4 ke atas. Add-ons tersebut akan ditandai sebagai “compatible” dengan Firefox 10 secara otomatis. Jadi tidak perlu lagi ada update tambahan dari developernya. Jadi yang sebelumnya sempat ngedumel kalo tiap kali upgrade versi add-ons nya banyak yg ga jalan sekarang boleh cengar-cengir tenang :)

firefox 10 addons

Kemudian ada menu Inspect Element seperti yang ada di Google Chrome. Nah ini salah satu tools favorit saya kalo di Chrome, dan ini pasti akan bikin hepi banyak web developer juga. Kalau di versi sebelumnya Firefox sudah dilengkapi dengan Web Console, DOM inspector sederhana. Di versi 10 ini Firefox menyediakan seacam panel terintegrasi untuk developer dengan DOM inspector yang lebih lengkap, juga tool untuk view-modif property CSS. Dan animasi DOM inspectornya lebih keren daripada Chrome :) Ga butuh lagi Firebug kalo kaya gini.

firefox 10 dom

Javascript ScratchPad, javascript editor lengkap dengan syntaxt highlighting-nya. Jadi kita bisa coding jscript langsung testing n lihat hasilnya di halaman web yang kita buat.

Selain itu, FF10 juga telah mendukung CSS 3D transform, full-screen API yang tentunya akan berguna sekali untuk web-based app yang memang butuh kapabilitas full screen supaya lebih optimal. Mirip Safari dengan full-screen support dari OSX Lion. Chrome juga ada sih. Versi berikutnya nanti akan support WebGL buat 3D web app. Kerennnn.

FF10 juga merupakan rilis pertama browser Mozilla yang ditawarkan sebagai Extended Support Release (ESR). Analoginya mungkin mirip dengan Ubuntu Long Time Support (LTS), cuman yang ESR ini kayanya buat setahun ajah. Yah mengingat update cycle Firefox sekarang kan cukup cepat tuh, per 6 minggu.