<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Dedi Purwanto</title>
	<atom:link href="https://kecebongsoft.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://kecebongsoft.wordpress.com</link>
	<description></description>
	<lastBuildDate>Tue, 22 Nov 2016 06:16:58 +0000</lastBuildDate>
	<language>id-ID</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<site xmlns="com-wordpress:feed-additions:1">1353270</site><cloud domain='kecebongsoft.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>https://s0.wp.com/i/buttonw-com.png</url>
		<title>Dedi Purwanto</title>
		<link>https://kecebongsoft.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="https://kecebongsoft.wordpress.com/osd.xml" title="Dedi Purwanto" />
	<atom:link rel='hub' href='https://kecebongsoft.wordpress.com/?pushpress=hub'/>
	<item>
		<title>Memasuki Dunia Sim Racing</title>
		<link>https://kecebongsoft.wordpress.com/2016/11/22/memasuki-dunia-sim-racing/</link>
					<comments>https://kecebongsoft.wordpress.com/2016/11/22/memasuki-dunia-sim-racing/#respond</comments>
		
		<dc:creator><![CDATA[kecebongsoft]]></dc:creator>
		<pubDate>Tue, 22 Nov 2016 04:07:55 +0000</pubDate>
				<category><![CDATA[post]]></category>
		<guid isPermaLink="false">http://kecebongsoft.wordpress.com/?p=1191</guid>

					<description><![CDATA[Semenjak bikin PC beberapa bulan yang lalu, saya jadi keranjingan main game (lagi), terutamanya game balap. Awal-awal main game saya masih coba-coba game lawas dan beberapa game AAA yang selama ini cuma sekedar lihat di Youtube (dulu nggak punya PC &#8230; <a href="https://kecebongsoft.wordpress.com/2016/11/22/memasuki-dunia-sim-racing/">Baca lebih lanjut <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>Semenjak <a href="https://kecebongsoft.wordpress.com/2016/07/19/im-building-a-pc/">bikin PC beberapa bulan yang lalu</a>, saya jadi keranjingan main game (lagi), terutamanya game balap. Awal-awal main game saya masih coba-coba game lawas dan beberapa game AAA yang selama ini cuma sekedar lihat di Youtube (dulu nggak punya PC untuk nyoba game-game tersebut) seperti Witcher 3, Doom, dsb.</p>
<p>Kembali ke game balap, awalnya saya kembali ke game yang dulu sering dimainkan, seperti TrackMania, Need For Speed, Grid dll, tapi semakin lama terasa semakin &#8220;monoton&#8221;, perlahan saya sadar rasa monoton itu datang dari kontroller: Keyboard / Mouse.</p>
<p><span id="more-1191"></span></p>
<p>Bukannya apa, menyetir dengan menekan tombol kiri/kanan untuk belok terasa sangat linear, mobil akan banting stir kiri/kanan nggak perduli apakah itu tikungan yg halus atau tajam.</p>
<p>1-2 minggu setelah main game balap ini saya mulai iseng liat-liat kontroller steering wheel di youtube. Dulu bener-bener nggak pernah kepikiran untuk punya satu; steering wheel itu barangnya gede, <em>bulky</em>, dan saya lebih cenderung punya meja yang minimalis. Tapi entah kenapa semakin dilihat semakin menarik, dan saya pun mulai research steering wheel apa yang kira-kira bagus dan ramah di dompet. Sembari <em>research</em>, saya &#8211; secara tidak sengaja- terekspose ke dunia <em>racing simulation</em>.</p>
<p>Racing simulation, atau sim racing, adalah salah satu bidang dimana kita mencoba meniru segala aspek yang ada di dunia balap, biasanya targetnya adalah harus semirip mungkin dengan balapan yang sesungguhnya.</p>
<p>Mulai dari situ, saya perlahan diperkenalkan dengan &#8220;game&#8221; balap yang sesungguhnya, game balap yang memang di targetkan kusus untuk para sim-racers, game-game yang bagi saya yang lumayan suka main game balap, malah nggak pernah dengar namanya sedikitpun!</p>
<p>Di mulai dari Project Cars; oke yang ini saya sering dengar, kemudian para sim-racers mengatakan bahwa Project Cars hanyalah &#8220;secuil&#8221; jika dibandingkan dengan Assetto Corsa (nggak pernah dengar ini) atau iRacing (apalagi ini).</p>
<p>Oke&#8230; Mulai dari situ saya mundur selangkah, <em>too much information to digest</em>. Kembali ke misi awal yaitu mencari steering wheel yang cocok untuk pemula. Kelihatannya dunia sim racing ini cukup menarik untuk didalami jadi saya berniat untuk kembali ke topic yg tadi setelah dapat steering wheel yang cocok.</p>
<p>Setelah research, ada 2 merek yg paling sering disebut, Thurstmaster dan Logitech, ada satu lagi tapi lumayan terkesan mahal yaitu Fanatech. Akhirnya saya pilih Logitech G27, sayangnya pas datang ke reseller Logitech, G27 sudah di-stop produksinya, digantikan oleh G29, yang menurut mayoritas sim-racers, adalah steering wheel yg &#8220;kemahalan&#8221;, karena nggak punya H-shifter, dalemannya sama dengan G27 dan harganya dinaikin.</p>
<p>Tapi yasudahlah, tidak ada pilihan lain dan saya tidak familiar dengan merek Thurstmaster, saya memilih <a href="http://gaming.logitech.com/en-us/product/g29-driving-force">Logitech G29</a>. Lagipula saya punya berbagai macam input device bermerek Logitech, jadi ada perasaan aman.</p>
<p><img data-attachment-id="1292" data-permalink="https://kecebongsoft.wordpress.com/2016/11/22/memasuki-dunia-sim-racing/g29-racing-wheel/" data-orig-file="https://kecebongsoft.wordpress.com/wp-content/uploads/2016/11/g29-racing-wheel.png" data-orig-size="630,342" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="g29-racing-wheel" data-image-description="" data-image-caption="" data-medium-file="https://kecebongsoft.wordpress.com/wp-content/uploads/2016/11/g29-racing-wheel.png?w=300" data-large-file="https://kecebongsoft.wordpress.com/wp-content/uploads/2016/11/g29-racing-wheel.png?w=630" class="alignnone size-full wp-image-1292" src="https://kecebongsoft.wordpress.com/wp-content/uploads/2016/11/g29-racing-wheel.png?w=640" alt="g29-racing-wheel"   srcset="https://kecebongsoft.wordpress.com/wp-content/uploads/2016/11/g29-racing-wheel.png 630w, https://kecebongsoft.wordpress.com/wp-content/uploads/2016/11/g29-racing-wheel.png?w=150&amp;h=81 150w, https://kecebongsoft.wordpress.com/wp-content/uploads/2016/11/g29-racing-wheel.png?w=300&amp;h=163 300w" sizes="(max-width: 630px) 100vw, 630px" /></p>
<p>Sesampainya dirumah, saya langsung coba dengan game RFactor 2 (Demo), saya udah download game ini jauh2 hari dan nyoba main dengan steering menggunakan mouse; kesimpulannya: nggak bisa finish lap tanpa nabrak. Percobaan pertama dengan G29: Saya bisa finish 5 lap tanpa nabrak.</p>
<p>Yup, ternyata memang bener, steering wheel itu adalah perangkat yang paling utama untuk sim-racing, main game balap tanpa steering wheel itu serasa ngetik menggunakan mouse dan on-screen keyboard, tidak ada granularity dan feel-nya bener2 hilang.</p>
<p>Melalui Logitech G29, saya mulai &#8220;diperkenalkan&#8221; mengenai &#8220;feeling&#8221; di dunia sim-racing, ada yang namanya force-feedback, dimana steering wheel akan <em>fight back</em> dengan tangan kita ketika sedang belok, menekan rem terlalu keras, atau ketika kena gundukan, dsb.</p>
<p>Sebelum membeli Logitech G29 saya sempat berninat, ini sekedar coba2, kemungkinan besar saya bakal bosan setelah 1-2 bulan dan akan saya jual lagi, sama seperti perangkat2 yg pernah saya beli sebelumnya (sebagian hanya coba2 dan sudah dijual lagi dengan harga tidak jauh beda)</p>
<p>Sudah hampir 3 bulan berlalu, bukannya bosan, saya malah semakin ketagihan! Minggu2 pertama saya nyoba Assetto Corsa dan lumayan suka, lalu Project Cars, mulai sedikit bosan lalu saya iseng nyoba iRacing.. dan boom! Saya langsung jatuh cinta dengan dunia sim-racing.</p>
<p>iRacing adalah &#8220;game&#8221; online yang mengedepankan realisme, disitu kita bisa bertanding dengan sim-racer lainnya dan kompetisinya sangat ketat, berbeda dengan waktu saya bermain vs AI, di iRacing saya benar-benar merasa ada <em>sense of fullfillment</em> bisa bertanding dengan sim-racer lainnya. Dan tentu saja semua mobil dan track di program se-nyata mungkin untuk mendukung realisme.</p>
<p>Secara retrospektif, saya tersadar ini hanyalah permulaan, saya tidak tahu apakah ini akan jadi hobi berkelanjutan atau sesaat saja, tapi saya mulai tertarik dengan perangkat sim racing yg lain seperti:</p>
<ul>
<li>Direct drive steering wheel, ingat sebelumnya saya sempat bilang Fanatech termasuk mahal? Ternyata ada yg lebih mahal dan lebih real yaitu Direct drive.</li>
<li>Sim racing cockpit, kokpit khusus untuk sim racers, lengkap dengan kursi balap, tempat monitor dan shifter, dll.</li>
<li>Virtual reality! saya sempat tertarik untuk menginstall 3 buah monitor tapi setelah research lagi, VR jadi opsi yang benar-benar menarik.</li>
<li>GPU, sekarang saya pakai GTX970, tapi dengan adanya VR mungkin nanti harus punya yg lebih mumpuni.</li>
</ul>
<p>Sim-racing bukan hobi yg murah, beberapa orang sempat berdebat bahwa uang yg dipakai untuk sim-racing bisa digunakan untuk balap yg sebenarnya, tapi saya punya sanggahan:</p>
<ul>
<li>Balap yg sebenarnya lebih repot, ada paperwork, asuransi, maintenance, dll.</li>
<li>Melalui sim-racing kita bisa memulai kapanpun, cukup nyalakan komputer dan langsung bisa tancap gas.</li>
<li>Perangkat sim-racing cenderung permanen dibanding dengan balap sungguhan yang yang akan selalu terkena <em>wear-and-tear</em>.</li>
</ul>
<p>Yang paling penting; fun factor, kita bisa memilih game apapun dan bisa <em>hop-in</em> tanpa prosedur panjang. Bagi saya saat ini bukan prioritas untuk menjadi sim-racer yang kompetitif, yang terpenting adalah fun dan <em>immersion</em>. Perlahan satu demi satu perangkat akan dicoba dan kita lihat apakah ini akan bisa menjadi hobi yg permanen <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://kecebongsoft.wordpress.com/2016/11/22/memasuki-dunia-sim-racing/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1191</post-id>
		<media:thumbnail url="https://kecebongsoft.wordpress.com/wp-content/uploads/2016/11/g29-racing-wheel.png" />
		<media:content url="https://kecebongsoft.wordpress.com/wp-content/uploads/2016/11/g29-racing-wheel.png" medium="image">
			<media:title type="html">g29-racing-wheel</media:title>
		</media:content>

		<media:content url="https://0.gravatar.com/avatar/694c2d3881e9b88034450cc1258505531790e80beb288a2ee1df2aaae4624662?s=96&#38;d=https%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">kecebongsoft</media:title>
		</media:content>
	</item>
		<item>
		<title>Pengalaman diskualifikasi di sim-racing</title>
		<link>https://kecebongsoft.wordpress.com/2016/11/15/pengalaman-diskualifikasi-di-sim-racing/</link>
					<comments>https://kecebongsoft.wordpress.com/2016/11/15/pengalaman-diskualifikasi-di-sim-racing/#respond</comments>
		
		<dc:creator><![CDATA[kecebongsoft]]></dc:creator>
		<pubDate>Tue, 15 Nov 2016 10:01:36 +0000</pubDate>
				<category><![CDATA[post]]></category>
		<guid isPermaLink="false">http://kecebongsoft.wordpress.com/?p=1180</guid>

					<description><![CDATA[Rekaman diatas adalah sesi Global Mazda MX-5 Cup tadi malam, cukup menegangkan di awal-awal, start di nomor 2, lalu mencoba bertahan hingga last lap. Semuanya lancar sampai di tikungan-tikungan terakhir tiba-tiba saya dilempar kembali ke menu screen, ternyata saya kena diskualifikasi karena &#8230; <a href="https://kecebongsoft.wordpress.com/2016/11/15/pengalaman-diskualifikasi-di-sim-racing/">Baca lebih lanjut <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<iframe class="youtube-player" width="640" height="360" src="https://www.youtube.com/embed/nqlQQ6oEbh4?version=3&#038;rel=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;fs=1&#038;hl=id&#038;autohide=2&#038;wmode=transparent" allowfullscreen="true" style="border:0;" sandbox="allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox"></iframe>
<p>Rekaman diatas adalah sesi Global Mazda MX-5 Cup tadi malam, cukup menegangkan di awal-awal, start di nomor 2, lalu mencoba bertahan hingga last lap. Semuanya lancar sampai di tikungan-tikungan terakhir tiba-tiba saya dilempar kembali ke menu screen, ternyata saya kena diskualifikasi karena terlalu banyak off-track!</p>
<p>Well, pelajaran baru, seringnya saya gagal dalam race karena kecelakaan, tapi kali ini penyebabnya lain. Lain kali setiap notifikasi yang muncul ketika saya off-track sudah harus diperhatikan karena bisa jadi faktor kegagalan dalam sebuah race.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kecebongsoft.wordpress.com/2016/11/15/pengalaman-diskualifikasi-di-sim-racing/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1180</post-id>
		<media:content url="https://0.gravatar.com/avatar/694c2d3881e9b88034450cc1258505531790e80beb288a2ee1df2aaae4624662?s=96&#38;d=https%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">kecebongsoft</media:title>
		</media:content>
	</item>
		<item>
		<title>Going back to WordPress</title>
		<link>https://kecebongsoft.wordpress.com/2016/11/14/going-back-to-wordpress/</link>
					<comments>https://kecebongsoft.wordpress.com/2016/11/14/going-back-to-wordpress/#respond</comments>
		
		<dc:creator><![CDATA[kecebongsoft]]></dc:creator>
		<pubDate>Mon, 14 Nov 2016 09:37:09 +0000</pubDate>
				<category><![CDATA[post]]></category>
		<guid isPermaLink="false">http://kecebongsoft.wordpress.com/?p=1147</guid>

					<description><![CDATA[It&#8217;s been years since my last post in WordPress, since then I&#8217;ve been writing in various medium, including static blog generator. Partly because I just want to have it store in my own storage and not dependent on other services. &#8230; <a href="https://kecebongsoft.wordpress.com/2016/11/14/going-back-to-wordpress/">Baca lebih lanjut <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>It&#8217;s been years since my last post in WordPress, since then I&#8217;ve been writing in various medium, including static blog generator. Partly because I just want to have it store in my own storage and not dependent on other services.</p>
<p>Lately I feel that it&#8217;s just too cumbersome having to commit and push every changes and having to wait until the page is built with the blog engine to see how it looks, so I have decided to give WordPress another go. Let&#8217;s see.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kecebongsoft.wordpress.com/2016/11/14/going-back-to-wordpress/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1147</post-id>
		<media:content url="https://0.gravatar.com/avatar/694c2d3881e9b88034450cc1258505531790e80beb288a2ee1df2aaae4624662?s=96&#38;d=https%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">kecebongsoft</media:title>
		</media:content>
	</item>
		<item>
		<title>PyCharm: Quick refactoring</title>
		<link>https://kecebongsoft.wordpress.com/2016/09/29/pycharm-quick-refactoring/</link>
					<comments>https://kecebongsoft.wordpress.com/2016/09/29/pycharm-quick-refactoring/#respond</comments>
		
		<dc:creator><![CDATA[kecebongsoft]]></dc:creator>
		<pubDate>Thu, 29 Sep 2016 09:42:39 +0000</pubDate>
				<category><![CDATA[post]]></category>
		<guid isPermaLink="false">http://kecebongsoft.wordpress.com/?p=1154</guid>

					<description><![CDATA[One thing I really like in PyCharm is you can do quick refactoring very easy and PyCharm will settle (almost) all the stuff for you. For example, here is me trying to refactor a single string of command to be &#8230; <a href="https://kecebongsoft.wordpress.com/2016/09/29/pycharm-quick-refactoring/">Baca lebih lanjut <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>One thing I really like in PyCharm is you can do quick refactoring very easy and PyCharm will settle (almost) all the stuff for you. For example, here is me trying to refactor a single string of command to be something more sophisticated:</p>
<p><img src="https://i0.wp.com/kecebongsoft.com/img/pycharm-refactoring.gif" alt="PyCharm quick refactoring" /></p>
<p>As you can see, I can take the whole string and put it in a variable, I then proceed to take some part of the string, in this case is the filename of the config source, into another variable. After that, I make it able to switch between different configs using the if statement, all using PyCharm quick refactoring features.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kecebongsoft.wordpress.com/2016/09/29/pycharm-quick-refactoring/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1154</post-id>
		<media:content url="https://0.gravatar.com/avatar/694c2d3881e9b88034450cc1258505531790e80beb288a2ee1df2aaae4624662?s=96&#38;d=https%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">kecebongsoft</media:title>
		</media:content>

		<media:content url="http://kecebongsoft.com/img/pycharm-refactoring.gif" medium="image">
			<media:title type="html">PyCharm quick refactoring</media:title>
		</media:content>
	</item>
		<item>
		<title>I&#8217;m building a PC!</title>
		<link>https://kecebongsoft.wordpress.com/2016/07/19/im-building-a-pc/</link>
					<comments>https://kecebongsoft.wordpress.com/2016/07/19/im-building-a-pc/#comments</comments>
		
		<dc:creator><![CDATA[kecebongsoft]]></dc:creator>
		<pubDate>Tue, 19 Jul 2016 09:47:54 +0000</pubDate>
				<category><![CDATA[post]]></category>
		<guid isPermaLink="false">http://kecebongsoft.wordpress.com/?p=1156</guid>

					<description><![CDATA[I got detached from PC gaming almost 6 years ago. I bought a budget gaming PC with my parents money back then after my laptop fried during a thunderstorm. The games I played are not AAA titles as they were &#8230; <a href="https://kecebongsoft.wordpress.com/2016/07/19/im-building-a-pc/">Baca lebih lanjut <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>I got detached from PC gaming almost 6 years ago. I bought a budget gaming PC with my parents money back then after my laptop fried during a thunderstorm. The games I played are not AAA titles as they were very expensive at the time. As you can see, I&#8217;m was a student and didn&#8217;t have money to spent on gaming.<span id="more-1156"></span></p>
<p>Add to that, I was studying abroad and moving from one place to another was the norm, so carrying a CPU tower was very inconvenient. I ended up giving it to my little brother and settled with a laptop for web development. From there on, I stopped doing PC gaming.</p>
<p>Still, I feel it would be awesome to have a gaming PC like everyone else. Every now and then I tried to play some games like Trine and Ori on a laptop and while I enjoyed them, the experience was very plain, with crippling FPS and loud laptop-fan begging for mercy.</p>
<p>Lately I have been playing few games on Steam, and would like to relive my PC gaming moments, I also wanted to enjoy the games I played on laptop as they were not very enjoyable on a laptop. So I started with an objective:</p>
<ul>
<li>I wanted a system that can run latest AAA titles with ease.</li>
<li>Future-proof for at least 3 years, and can be upgraded without throwing the important parts away (e.g: Motherboard &amp; PSU)</li>
<li>Most importantly, it has to be small enough to carry, in case I&#8217;m moving out.</li>
<li>I code web and run VMs frequently, so I need a lot of RAM.</li>
<li>Affordable, I don&#8217;t need fastest processor on the planet etc.</li>
</ul>
<p>Now, excuse my stupidity, I didn&#8217;t find out about Mini ATX before, and it&#8217;s like a revelation for me right now, because it&#8217;s so much smaller and it&#8217;s very convenient to carry around, and yet I can still put a powerful components inside. So let&#8217;s start off with that.</p>
<h2>Casing: Cooler Master Elite 130</h2>
<p>I was using <a href="http://images-cdn.lowyat.net/pricelists/PCHardware/C-Zone/pchardware-czone.pdf">CZone&#8217;s price list as the reference point</a>, as you can see, from here on I&#8217;ll pick parts that are often the cheapest option but can still deliver my needs.</p>
<p><img src="https://i0.wp.com/kecebongsoft.com/img/2016/10/gaming-pc/1.jpg" alt="image" /></p>
<p>For the casing, I intentonally picked Cooler Master Elite 110 for it&#8217;s cheap price, but after reading reviews, turns out that this is a Mini ITX case, and then I learned about different sizes of cases and Mini ITX is the perfect size for me. I was a bit worried about heat problems but turns out it&#8217;s okay. I ended up picking the Elite 130 because I need to make sure any graphic cards can fit in just fine.</p>
<h2>PSU: Cooler Master VS650</h2>
<p>There&#8217;s nothing special about the PSU here, I was originally planing to get the 550W PSU because they are generally cheaper, but the guy at CZone advised me to takek the 650W just in case I need bigger GPU. Well, there&#8217;s not much margin in price so I went ahead and take this one.</p>
<p><img src="https://i0.wp.com/kecebongsoft.com/img/2016/10/gaming-pc/2.png" alt="image" /></p>
<p>One thing that I&#8217;m quite sure is that GPU vendors such as ATi and NVidia are making better cards with lower power consumption, so I know I shouldn&#8217;t worry too much about this. If there&#8217;s anything, I&#8217;m just a bit sad that it&#8217;s not modular, that means I can&#8217;t take out extra power cables to clean my setup, although I personally don&#8217;t think it&#8217;s a big issue.</p>
<h2>Motherboard: Asus H110I-PLUS</h2>
<p><img src="https://i0.wp.com/kecebongsoft.com/img/2016/10/gaming-pc/3.jpg" alt="image" /></p>
<p>I picked this up because from the spec it looks like it has everything I need, but then there are several things I didn&#8217;t discover since I&#8217;m really green:</p>
<ul>
<li>There&#8217;s no M2 slot (for faster SSD)</li>
<li>The bus speed is slower, being a non-gaming motherboard.</li>
<li>It can only accept 2133 RAM, so high-performance DDR4 is out of the window.</li>
</ul>
<p>All these points, while it&#8217;s not important for me right now, I&#8217;m not sure about the future, although I&#8217;m sure I won&#8217;t be missing anything by not having any of these in the coming 5-6 years.</p>
<h2>Memory: Kingston 1-stick D4 2133 16GB</h2>
<p>So I was actually planning to get a high performance RAM, but I found out later that my mobo doesn&#8217;t support that. I was advised to get a gaming mobo but then I figured out I can hardly find any difference since I&#8217;m not a hardcore gamer. So I ended up with a normal DDR4.</p>
<p><img src="https://i0.wp.com/kecebongsoft.com/img/2016/10/gaming-pc/4.jpg" alt="image" /></p>
<p>The beautiy of this, is that I took the 1-stick 16GB. So that means my mobo (which has only 2 DDR4 slots) can take another 16GB in the future and I can have 32GB max. I know some people are saying 2x8GB is better than 1x16GB in terms of speed but I&#8217;m not sure if that&#8217;s a real thing and if I ever going to have any problem with that.</p>
<h2>Processor: Intel i5 6500</h2>
<p>I&#8217;m so thankful that researched the difference on i5 and i7. I was aiming for the highest one and being a laptop user, I was not very satisfied with my i5 laptop (Mac) and i7 laptop at work (Dell), as it turns out, desktop and laptop processors are very different.</p>
<p><img src="https://i0.wp.com/kecebongsoft.com/img/2016/10/gaming-pc/5.jpg" alt="image" /></p>
<p>I also saw a <a href="http://i.imgur.com/xFj9QQ7.png">chart about processor differences</a> and I realised all I need is an i5, I even tuned down to 6500 instead of the OC version since I don&#8217;t need to do any overclocking, a lot of saving happened here.</p>
<h2>Storage: Kingston UV400 240GB</h2>
<p><img src="https://i0.wp.com/kecebongsoft.com/img/2016/10/gaming-pc/6.jpg" alt="image" /></p>
<p>Again, I was originally aiming for 128GB since they are cheaper, but thanks to some cuts I made on the RAM and processor, I can get 250GB and they run just fine. In the future I can always add more storage as needed.</p>
<h2>Graphics: Asus GTX970 Turbo 4GB DDR5</h2>
<p>Enough said for this card, it&#8217;s a best bang for your buck. I was unsure if I should pick a Radeon but then I saw a lot of people are using GTX970 so I went it for &#8220;safety&#8221; reason. I know there are issues like VRAM but I don&#8217;t really mind it.</p>
<p><img src="https://i0.wp.com/kecebongsoft.com/img/2016/10/gaming-pc/7.png" alt="image" /></p>
<p>A little note though, I was planning to get the MSI one but they are out of stock, so I picked up this one instead, I didn&#8217;t even go with the Strix version since it doesn&#8217;t matter much at this point.</p>
<h2>End result: A little box that packs power for &lt;$650</h2>
<p><img src="https://i0.wp.com/kecebongsoft.com/img/2016/10/gaming-pc/8.jpg" alt="image" /></p>
<p>So here&#8217;s how it looks, as you can see it&#8217;s quite small and powerful (at least for me), it&#8217;s running on Windows 10 and so far I&#8217;m very satisfied with it&#8217;s performance. I&#8217;m saving up to buy some AAA titles, but the stuff that I&#8217;m running, including Forza, are running smoothly at 60+ FPS. If you know me, you&#8217;ll see that I like to switch between games and coding very frequently, so this build can serve me very well on that.</p>
<p>I can easily bring this anywhere conveniently, and I can upgrade it with better specs in the future, which brings me to the next point.</p>
<h2>Future plan: Faster processor, GPU and bigger RAM</h2>
<p>The motherboard has 2DDR4 slots, 1151 CPU and 1 PCIe, that means in 4-5 years when better components are available in lower prices, I can easily grab:</p>
<ul>
<li>The fastest i7 that has slot 1151.</li>
<li>Double my RAM to 32GB.</li>
<li>Fastest GPU that has PCIe (who knows if they gonna change the slot again)</li>
<li>VR headset!</li>
</ul>
<p>Overall. I&#8217;m pretty happy with this build, it&#8217;s fast, powerful, small and it doesn&#8217;t hurt the budget at all.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kecebongsoft.wordpress.com/2016/07/19/im-building-a-pc/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1156</post-id>
		<media:content url="https://0.gravatar.com/avatar/694c2d3881e9b88034450cc1258505531790e80beb288a2ee1df2aaae4624662?s=96&#38;d=https%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">kecebongsoft</media:title>
		</media:content>

		<media:content url="http://kecebongsoft.com/img/2016/10/gaming-pc/1.jpg" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://kecebongsoft.com/img/2016/10/gaming-pc/2.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://kecebongsoft.com/img/2016/10/gaming-pc/3.jpg" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://kecebongsoft.com/img/2016/10/gaming-pc/4.jpg" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://kecebongsoft.com/img/2016/10/gaming-pc/5.jpg" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://kecebongsoft.com/img/2016/10/gaming-pc/6.jpg" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://kecebongsoft.com/img/2016/10/gaming-pc/7.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://kecebongsoft.com/img/2016/10/gaming-pc/8.jpg" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Mobil Tanpa Supir milik Google</title>
		<link>https://kecebongsoft.wordpress.com/2011/03/04/mobil-tanpa-supir-milik-google/</link>
					<comments>https://kecebongsoft.wordpress.com/2011/03/04/mobil-tanpa-supir-milik-google/#comments</comments>
		
		<dc:creator><![CDATA[kecebongsoft]]></dc:creator>
		<pubDate>Fri, 04 Mar 2011 07:16:23 +0000</pubDate>
				<category><![CDATA[post]]></category>
		<category><![CDATA[ai]]></category>
		<category><![CDATA[artificial intelligence]]></category>
		<category><![CDATA[automotif]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[gps]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[komputer]]></category>
		<category><![CDATA[mobil]]></category>
		<category><![CDATA[otomotif]]></category>
		<category><![CDATA[ted]]></category>
		<category><![CDATA[ted2011]]></category>
		<guid isPermaLink="false">http://kecebongsoft.wordpress.com/?p=1126</guid>

					<description><![CDATA[Google membuat kejutan di konferensi TED2011 baru-baru ini. Sebuah mobil tanpa supir. Tidak hanya tanpa supir, tapi mobil ini bisa &#8220;menyetir&#8221; dengan keahlian tingkat mahir. Penonton dipersilahkan masuk kedalam mobil ini untuk melihat secara langsung bagaimana mobilnya &#8220;menyetir&#8221;. Ada LCD &#8230; <a href="https://kecebongsoft.wordpress.com/2011/03/04/mobil-tanpa-supir-milik-google/">Baca lebih lanjut <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p><a href="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/03/google-logo-transparent.png"><img style="background-image:none;border-bottom:0;border-left:0;padding-left:0;padding-right:0;display:block;float:none;margin-left:auto;border-top:0;margin-right:auto;border-right:0;padding-top:0;" title="google-logo-transparent" border="0" alt="google-logo-transparent" src="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/03/google-logo-transparent_thumb.png?w=240&#038;h=103" width="240" height="103"></a>Google membuat kejutan di konferensi <a href="http://conferences.ted.com/TED2011/" target="_blank">TED2011</a> baru-baru ini. Sebuah mobil tanpa supir. Tidak hanya tanpa supir, tapi mobil ini bisa &#8220;menyetir&#8221; dengan keahlian tingkat mahir.</p>
<p>Penonton dipersilahkan masuk kedalam mobil ini untuk melihat secara langsung bagaimana mobilnya &#8220;menyetir&#8221;. Ada LCD di tengah dashboard yang menunjukan rute, pada saat mobil dijalankan, steering wheel akan berputar sendiri, begitu juga dengan gear stick dan rem, lihat video dibawah:</p>
<p><span id="more-1126"></span></p>
<iframe class="youtube-player" width="640" height="360" src="https://www.youtube.com/embed/oMdcWHnbhsw?version=3&#038;rel=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;fs=1&#038;hl=id&#038;autohide=2&#038;wmode=transparent" allowfullscreen="true" style="border:0;" sandbox="allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox"></iframe>
<p>Dan video ini diambil dari luar mobil:</p>
<iframe class="youtube-player" width="640" height="360" src="https://www.youtube.com/embed/YaGJ6nH36uI?version=3&#038;rel=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;fs=1&#038;hl=id&#038;autohide=2&#038;wmode=transparent" allowfullscreen="true" style="border:0;" sandbox="allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox"></iframe>
<p>Pada video diatas, terlihat mobil melaju sangat cepat karena Google sengaja mengaturnya seperti itu untuk menunjukan level responsiveness dari mobil tersebut. Pada video tersebut, mobil diprogram untuk mengikuti jalur yang telah dibuat, karena di halaman parkir tersebut tidak ada jalan raya.</p>
<p>Jika mobil diletakan dijalan raya, maka secara otomatis rute akan diatur oleh GPS. Mobil ini sudah pernah dicoba melewati jalur San Francisco ke Los Angeles menggunakan GPS.</p>
<p><a href="http://robots.stanford.edu/" target="_blank">Sebastian Thrun</a>, pimpinan proyek ini, menunjukan bahwa mobil ini bisa menghindari rintangan-rintangan rumit seperti kijang yang menyebrang atau truk yang lewat, juga melewati jalan setapak dengan perlahan.</p>
<p>Baca juga:</p>
<ul>
<li><a href="http://www.engadget.com/2010/10/15/googles-driverless-car-gets-driven-video/">http://www.engadget.com/2010/10/15/googles-driverless-car-gets-driven-video/</a></li>
<li><a href="http://www.engadget.com/2010/10/09/google-and-tu-braunschweig-independently-develop-self-driving-ca/">http://www.engadget.com/2010/10/09/google-and-tu-braunschweig-independently-develop-self-driving-ca/</a></li>
<li><a href="http://googleblog.blogspot.com/2010/10/what-were-driving-at.html">http://googleblog.blogspot.com/2010/10/what-were-driving-at.html</a></li>
</ul>
]]></content:encoded>
					
					<wfw:commentRss>https://kecebongsoft.wordpress.com/2011/03/04/mobil-tanpa-supir-milik-google/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1126</post-id>
		<media:content url="https://0.gravatar.com/avatar/694c2d3881e9b88034450cc1258505531790e80beb288a2ee1df2aaae4624662?s=96&#38;d=https%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">kecebongsoft</media:title>
		</media:content>

		<media:content url="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/03/google-logo-transparent_thumb.png" medium="image">
			<media:title type="html">google-logo-transparent</media:title>
		</media:content>
	</item>
		<item>
		<title>GDI ShoutBox v1</title>
		<link>https://kecebongsoft.wordpress.com/2011/03/03/gdi-shoutbox-v1/</link>
					<comments>https://kecebongsoft.wordpress.com/2011/03/03/gdi-shoutbox-v1/#comments</comments>
		
		<dc:creator><![CDATA[kecebongsoft]]></dc:creator>
		<pubDate>Thu, 03 Mar 2011 13:57:16 +0000</pubDate>
				<category><![CDATA[post]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[chat]]></category>
		<category><![CDATA[comet]]></category>
		<category><![CDATA[computer]]></category>
		<category><![CDATA[cronjob]]></category>
		<category><![CDATA[GAE]]></category>
		<category><![CDATA[gamedevid]]></category>
		<category><![CDATA[gdi]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[google app engine]]></category>
		<category><![CDATA[google data store]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[komputer]]></category>
		<category><![CDATA[memcache]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[realtime]]></category>
		<category><![CDATA[shoutbox]]></category>
		<category><![CDATA[software]]></category>
		<guid isPermaLink="false">http://kecebongsoft.wordpress.com/2011/03/03/gdi-shoutbox-v1/</guid>

					<description><![CDATA[GDIShoutbox adalah aplikasi web-based real-time chat yang dibangun diatas Google App Engine (GAE). GDISB memakai beberapa teknologi yang memungkinkan aplikasi chat menjadi lebih ringan, cepat, dan efisien. GDISB sudah mulai dikembangkan sejak awal tahun ini, ide pengembangannya muncul karena website &#8230; <a href="https://kecebongsoft.wordpress.com/2011/03/03/gdi-shoutbox-v1/">Baca lebih lanjut <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p><img style="background-image:none;border-bottom:0;border-left:0;padding-left:0;padding-right:0;display:block;float:none;margin-left:auto;border-top:0;margin-right:auto;border-right:0;padding-top:0;" title="hdr_logo-o" border="0" alt="hdr_logo-o" src="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/03/hdr_logo-o1.gif?w=240&#038;h=60" width="240" height="60"></p>
<p>GDIShoutbox adalah aplikasi web-based real-time chat yang dibangun diatas <a href="http://code.google.com/appengine/" target="_blank">Google App Engine</a> (GAE). GDISB memakai beberapa teknologi yang memungkinkan aplikasi chat menjadi lebih ringan, cepat, dan efisien.</p>
<p>GDISB sudah mulai dikembangkan sejak awal tahun ini, ide pengembangannya muncul karena website <a href="http://www.gamedevid.org/" target="_blank">gamedev dimana saya aktif</a>, punya modul shoutbox yang cukup lama down, salah satu alasan matinya modul shoutbox yang lama yaitu karena sangat <em>rakus</em> resource. Beberapa membernya termasuk saya mencarikan solusi untuk membuat shoutbox yang hemat resource dan sekiranya bisa di tanam di free hosting.</p>
<p>Lalu munculah ide untuk mengembangkan aplikasi chat di GAE. GDISB awalnya dibangun dengan sistem <a href="http://en.wikipedia.org/wiki/Pooling_(resource_management)" target="_blank">traditional pooling</a>, dimana client akan melakukan request ke server dalam interval tertentu. Seiring waktu, GDISB mulai dibenahi dengan teknologi yang lebih baik, antara lain menggunakan teknologi Google Channel API (<a href="http://en.wikipedia.org/wiki/Comet_(programming)" target="_blank">Comet</a>) untuk transaksi datanya, CronJob untuk meringankan beberapa proses update, serta memcache untuk mengurangi query ke Google Data Store.</p>
<p><span id="more-1122"></span></p>
<p>Selain implementasi beberapa hal diatas, GDISB juga menggunakan OAuth untuk autentikasi user. <a href="http://gdi-accounts.appspot.com/" target="_blank">OAuth ditanam di aplikasi GAE yang lain</a>, thanks to @<a href="http://twitter.com/exavolt" target="_blank">exavolt</a> for providing this awesome service. GDISB juga menggunakan JQuery untuk beberapa fitur additionalnya.</p>
<p>Thanks to all positive feedbacks, sekarang GDISB telah up and running di website <a href="http://www.gamedevid.org/" target="_blank">Gamedevid</a>, meskipun masih dalam status beta. Berkat pembenahan disana sini, GDISB sudah bisa meminimalisasi resource usage di server GAE yang free quotanya sangat minim, ini adalah latest chart dimana usage harian biasanya tidak lebih dari 10%:</p>
<div style="width: 310px" class="wp-caption alignnone"><a href="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/03/untitled.png"><img style="background-image:none;padding-left:0;padding-right:0;display:inline;padding-top:0;border-width:0;" title="Untitled" border="0" alt="Untitled" src="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/03/untitled_thumb.png?w=240&#038;h=155" width="240" height="155"></a><p class="wp-caption-text">Klik untuk melihat versi penuh</p></div>
<p>Usage ini belum bisa dijadikan patokan efisiensi, karena sistem load testing di GAE adalah ramp up slowly. Meskipun begitu, grafik diatas cukup fantastis mengingat implementasi GDISB di awal yaitu traditional pooling, bisa memakan resource hingga 90% keatas tiap harinya.</p>
<p>GDISB dilepas sebagai project opensource, dan bisa di download disini:</p>
<p><a href="https://github.com/GameDev-ID/shoutbox">https://github.com/GameDev-ID/shoutbox</a></p>
<p>Bagi yang tertarik untuk mempelajari Google App Engine dan Google Chanel API, silahkan baca artikel <a href="https://kecebongsoft.wordpress.com/2011/01/29/mengenal-google-channel-api-part-1/" target="_blank">ini</a> dan <a href="https://kecebongsoft.wordpress.com/2011/01/30/mengenal-google-channel-api-part-2/" target="_blank">ini</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kecebongsoft.wordpress.com/2011/03/03/gdi-shoutbox-v1/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1122</post-id>
		<media:content url="https://0.gravatar.com/avatar/694c2d3881e9b88034450cc1258505531790e80beb288a2ee1df2aaae4624662?s=96&#38;d=https%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">kecebongsoft</media:title>
		</media:content>

		<media:content url="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/03/hdr_logo-o1.gif" medium="image">
			<media:title type="html">hdr_logo-o</media:title>
		</media:content>

		<media:content url="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/03/untitled_thumb.png" medium="image">
			<media:title type="html">Untitled</media:title>
		</media:content>
	</item>
		<item>
		<title>Asah Kemampuan Software Development</title>
		<link>https://kecebongsoft.wordpress.com/2011/02/28/asah-kemampuan-software-development/</link>
					<comments>https://kecebongsoft.wordpress.com/2011/02/28/asah-kemampuan-software-development/#comments</comments>
		
		<dc:creator><![CDATA[kecebongsoft]]></dc:creator>
		<pubDate>Mon, 28 Feb 2011 06:30:04 +0000</pubDate>
				<category><![CDATA[post]]></category>
		<category><![CDATA[computer]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[komputer]]></category>
		<category><![CDATA[kuliah]]></category>
		<category><![CDATA[mahasiswa]]></category>
		<category><![CDATA[opini]]></category>
		<category><![CDATA[pemrograman]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[sarjana]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[TI]]></category>
		<guid isPermaLink="false">http://kecebongsoft.wordpress.com/?p=1115</guid>

					<description><![CDATA[Saya ingin melakukan klaim pribadi, bahwa mayoritas lulusan IT, setidaknya yang saya kenal, memiliki pehamaman minim di jurusannya, bahkan setelah lulus. Salah satu skill yang katanya sangat sulit dijamah adalah software development (programming). Kenapa?. Setiap tahunnya, kampus saya meluluskan setidaknya &#8230; <a href="https://kecebongsoft.wordpress.com/2011/02/28/asah-kemampuan-software-development/">Baca lebih lanjut <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p><img style="background-image:none;border-bottom:0;border-left:0;padding-left:0;padding-right:0;display:block;float:none;margin-left:auto;border-top:0;margin-right:auto;border-right:0;padding-top:0;" title="Software Development adalah telur" border="0" alt="Software Development adalah telur" src="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/02/fertility_egg1.png?w=240&#038;h=174" width="240" height="174"></p>
<p>Saya ingin melakukan klaim pribadi, bahwa mayoritas lulusan IT, setidaknya yang saya kenal, memiliki pehamaman minim di jurusannya, bahkan setelah lulus. Salah satu skill yang <em>katanya</em> sangat sulit dijamah adalah software development (programming). Kenapa?.</p>
<p>Setiap tahunnya, kampus saya meluluskan setidaknya hampir seribu mahasiswa/i fakultas Computing &amp; IT (FOCIT). Di fakultasi ini ada beberapa jurusan seperti Multimedia, Networking, Business IT, Computer Science dan Software Engineering. Saya adalah salah satu dari <em>mungkin</em> hampir seribuan pelajar yang lulus di FOCIT tahun lalu, jurusan saya adalah <a href="http://en.wikipedia.org/wiki/Software_engineering">Software Engineering</a>.</p>
<p>Kesan saya setelah lulus adalah, apa yang disajikan <em>degree</em> (S1) IT memang sangat kurang jika kita ingin benar-benar mengasah kemampuan IT, utamanya di bagian Software Development, sehingga <a href="http://www.networkworld.com/news/2011/022511-it-graduates.html?hpg1=bn" target="_blank">banyak perusahaan yang memvonis lulusan IT sebagai benar-benar pemula</a>. Saya nggak terkejut melihat sebagian teman-teman belum mahir dalam mengembangkan sebuah system, problem solving, atau sekedar menulis program kecil. Karna ternyata dibeberapa negara lain juga mengalami masalah yang sama, <a href="http://www.codinghorror.com/blog/2010/02/the-nonprogramming-programmer.html">bahkan di negara-negara yang sering orang bilang &#8220;barat&#8221;.</a></p>
<p>Software Development memang satu topik yang sangat luas, nyaris mustahil bisa di cover dalam 3-4 tahun kuliah dengan jam belajar hanya sebatas pagi sampai sore dan ditambah beberapa tugas rumah. Untuk menguasai banyak topik software development, kita tidak bisa hanya mengandalkan jam kuliah. Satu-satunya cara adalah dengan belajar secara mandiri, dan untungnya, banyak sekali media yang memudahkan belajar software development secara mandiri.</p>
<p>Meskipun saya sendiri belum bisa meng-klaim diri sebagai orang yang berpengalaman, tapi saya bersyukur punya teman-teman yang sudah cukup kaliber di beberapa field software development. Ada beberapa hal yang saya selalu ikuti dan ingat, dan terasa sangat bermanfaat untuk mengasah kemampuan kita di software development. Apa saja?.</p>
<p><span id="more-1115"></span></p>
<h3>Jangan takut dengan bahasa pemrograman</h3>
<p>Ini adalah poin penting, tidak hanya bahasa pemrograman, tapi teknologi, API, teknik dan arsitektur baru. Saya ngerasa hal yang paling sulit untuk memulai belajar soft-development adalah belajar bahasa pemrograman. Kenyataannya adalah, belajar bahasa pemrograman hanya butuh beberapa minggu/bulan sampai kita cukup punya ide dan skill untuk mempergunakannya. Pemahaman tentang variabel, operator, statement, dll tidak butuh waktu bertahun-tahun.</p>
<p>Memang, bahasa pemrograman butuh waktu untuk dipahami alurnya. Tapi dengan melakukan latihan rutin setiap harinya, kita bisa menguasai sebuah bahasa pemrograman dengan cepat. Orang sering lupa bahwa ada bahasa yang lebih sulit dari bahasa pemrograman, yaitu bahasa manusia. Bahasa pemrograman jauh lebih terstruktur dan universal. Ada ratusan ekspresi manusia untuk menyampaikan &#8220;Kalau sudah malam, saatnya tidur&#8221;, sedangkan bahasa pemrograman tidak akan sekompleks itu. Cukup dengan:</p>
<blockquote>
<p><font color="#242424">if (malam) tidur = true</font></p>
</blockquote>
<p>Yup, bahasa pemrograman jauh lebih terstruktur, dan <strong>universal</strong>. Artinya kebanyakan bahasa pemrograman menggunakan bahasa inggris, sehingga bisa dibaca oleh siapapun yang punya dasar inggris cukup.</p>
<p>Belajar bahasa pemrograman, pada dasarnya nggak lebih dari sekedar belajar <em>gimana cara menyuruh sistem untuk melakukan sesuatu</em>. Dan alur serta aturannya telah dibuat baku, bahannya pun tersedia luas di internet. Singkatnya, belajar bahasa pemrograman (dasar) bukan sesuatu yang rumit.</p>
<h3>Konsentrasi pada kasus, bukan tools.</h3>
<p>Hal kedua yang sebenarnya sering luput dari <em>concern</em> kita adalah, <a href="http://en.wikipedia.org/wiki/Problem_domain">problem domain</a>. Ketika ada tugas membuat program kuis, atau game tetris. Yang sering terpikir pertama kali adalah, bagaimana bahasa X bisa dipakai untuk membuat program Y?, fungsi apa di bahasa X yang bisa dipakai untuk membuat fitur di program Y?. Saya ngerasa anggapan ini lebih banyak salahnya, pemikiran seperti ini sama saja seperti bilang:</p>
<blockquote>
<p><font color="#242424">ketika saya menguasai kapak, dan saya ingin membuka pintu, gimana caranya supaya kapak ini bisa dipakai untuk membuka pintu?</font></p>
</blockquote>
<p>Kita terlalu terfokus pada tools yang kita miliki, sehingga kasus apapun selalu berusaha di selesaikan dengan tools yang kita punya, dan melupakan inti kasusnya, karena terfokus pada toolsnya. Ini membuat penyelesaian yang kita buat jadi salah, atau bahkan benar-benar buruk. Contoh, memilih plain text sebagai tempat <em><a href="http://en.wikipedia.org/wiki/Web_feed">web feed</a>&nbsp;</em>hanya karna nggak ngerti <a href="http://en.wikipedia.org/wiki/Rss">RSS</a>.</p>
<p>Ada banyak alasan kenapa paham seperti ini ada, salah satunya adalah rasa takut mencoba hal baru, seperti poin pertama tadi. Dampaknya bermacam-macam, kita jadi <em>stuck </em>di satu tool dan hanya mengerti arsitektur tool tersebut, tidak akan ada proses pembelajaran software development yang benar, karena pada dasarnya kita mencoba mem-fit kan semua masalah ke tool yang kita miliki.</p>
<p>Cara yang benar adalah, dengan lebih fokus kepada apa yang ingin kita lakukan, ketimbang apa yang kita miliki. Setelah kita tahu apa yang kita mau capai, mulailah mempelajari secara detail apa saja yang kita perlukan, lalu kumpulkan kebutuhannya.</p>
<blockquote>
<p><font color="#242424">Saya ingin membuka pintu, pintu memiliki lubang kunci dan kenob, maka saya akan mencari kunci dan memutar kenobnya.</font></p>
</blockquote>
<p>Contoh diatas adalah cara yang benar dalam observasi kasus, dengan mengetahui goals yang kita ingin capai, serta mempelajari apa saja yang diperlukan untuk mencapai goals tersebut, kita akan belajar banyak tentang meng-engineer sistem dengan benar, termasuk memilih arsitektur, platform, bahasa pemrograman, dan teknik yang benar.</p>
<blockquote>
<p><font color="#242424">Jika saya ingin membuat game yang bisa dijalankan dengan browser, saya akan pilih teknologi yang didukung oleh browser seperti HTML5, Flash, Unity, atau WebGL</font></p>
</blockquote>
<p>Ketimbang memaksakan untuk membuat game browser dengan Visual Basic karna alasan hanya ngerti VB, kita memutuskan untuk mempelajari teknologi lain, mengetahui kekurangan dan kelebihannya, dan memilih yang paling cocok untuk goals yang ingin kita capai. Disinilah salah satu skill software development diasah.</p>
<h3>Mulai darimana?</h3>
<p>Belajar bahasa pemrograman, dan lebih lanjut lagi adalah software development, memang butuh waktu. Saya ingat awal-awal saya belajar programming language adalah waktu SMP. Saat itu internet masih sangat terbatas, saya harus diam-diam <em>kabur</em> dari tugas jaga adek di rumah dan naik angkot sekitar 1 jam ke warnet. Pertama kali saya belajar programming dari majalah <a href="http://bukulawas.com/index.php/vmchk/Majalah-Komputer/Mikrodata-vol.-4-seri-14/flypage.tpl.html">Mikrodata</a>, disitu saya menyalin habis sebuah script yang <em>katanya </em>bisa dipakai untuk membuat game puzzle dengan basis <a href="http://en.wikipedia.org/wiki/MIDlet">MIDlet</a>. Setelah berjam-jam menyalin script dari majalah ke Notepad, hasilnya?. Nggak ada, game nggak jalan sama sekali. Saya bahkan nggak tahu bahwa komputer saya nggak ada Java-nya. Tapi dari situ saya belajar banyak, salah satunya adalah tentang HTML, Javascript, variable, statement dan operator.</p>
<p>Setelah frustasi karna script yang saya salin nggak jalan, saya coba memodifikasi berhari-hari. Dan memang tetap nggak jalan, tapi dari situ saya tahu banyak sekali tentang tag HTML dan Javascript. Saya mulai iseng membuat web page kecil, ada message boxnya, input box, conditional statement, dll.</p>
<p>Mulai dari situ saya merambah ke server side scripting, juga programming di desktop seperti VB. Saya membuat ratusan program kecil yang fungsinya hanya sekedar nampilin angka 1 sampai 100, angka ganjil genap, bilangan prima, nampilin gambar, dan lain-lain. Dan manfaatnya benar-benar saya rasakan.</p>
<p>Intinya adalah <em>start somewhere</em>. Ambil sisi IT yang paling kita suka, web development misalnya, lalu buat sebanyak mungkin hal-hal kecil yang memang nggak ada gunanya di sisi user, tapi ada gunanya untuk bahan belajar. Semakin dalam kita belajar, akan semakin fun, dan semakin banyak pemahaman yang kita dapatkan dari situ. Disinilah kita dapat banyak basic tentang bahasa pemrograman.</p>
<p>Setelah mulai dapat dasar tentang bahasa pemrograman, buatlah sesuatu yang lebih kompleks dan bisa digunakan. Buku tamu misalnya, atau game kuis yang hanya sekedar nampilin pertanyaan dan jawaban. Disini kita mulai dihadapkan dalam satu kasus spesifik (buku tamu / game kuis), dan diharuskan untuk melakukan mapping, memecah satu tugas besar menjadi beberapa tugas kecil, dan mengaturnya serapi mungkin. Contoh untuk buku tamu, kita ditantang untuk membuat beberapa subsistem untuk menangani tugas-tugas tertentu, seperti menulis pesan, menyimpan pesan, dan menampilkan pesan. </p>
<h3>Oke mulai!</h3>
<p>Meskipun cara <em>nyoba-nyoba acak</em> milik saya terasa berhasil, tapi di jaman yang akses internet sangat mudah seperti sekarang, ada cara-cara yang lebih baik. Selain membuat ratusan program kecil yang pada dasarnya hanya <em>&#8220;sampah&#8221;</em> , ada satu hal yang <strong>wajib</strong> dikerjakan untuk mengasah kemampuan software development. yaitu <a href="http://en.wikipedia.org/wiki/Open_source">Open Source</a>!.</p>
<p>Ikut atau membuat open source project, mengajarkan kita banyak sekali hal-hal baru. Kolaborasi, debugging, arsitektur baru, teknologi dan teknik baru, latest issue di dunia IT, dll. Cobalah ikut join di berbagai project open source. Contohnya, kita bisa download CMS WordPress, pelajari cara install dan konfigurasinya, lalu coba buat sebuah plugin yang bermanfaat, <a href="https://kecebongsoft.wordpress.com/2007/07/12/shoutbong-v10/">contohnya plugin shoutbox</a>. Mengembangkan plugin membuat kita mengerti tentang arsitektur sebuah sistem. Setelah menulis plugin, jangan lupa di lepas sebagai project open source, lalu orang-orang akan datang dan memberi berbagai feedback bermanfaat.</p>
<p>Kita bisa pakai layanan code hosting untuk mengelola aktifitas coding open source, ada <a href="https://github.com/">GitHub</a>, <a href="http://sourceforge.net/">SourceForge</a>, <a href="http://www.codeplex.com/">CodePlex</a>, <a href="http://code.google.com/">Google Code</a>, <a href="https://launchpad.net/" target="_blank">LaunchPad</a>, dll. Cukup mendaftar dan mencari project-project yang sekiranya menarik dan bisa ikuti, lalu join dan ikut kembangkan.</p>
<p>Banyak sekali manfaat yang bisa kita dapatkan dengan aktif di open source project, jika dibanding dengan materi yang kita dapatkan pada jam kuliah.</p>
<h3>Blogging!</h3>
<p>Yup, menulis artikel atau <em>blogging</em> adalah cara selanjutnya untuk mengasah kemampuan. Kedengarannya simpel, tapi manfaatnya baru terasa setelah kita menulis banyak artikel.</p>
<p>Ketika kita baru saja belajar tentang teknik pemrograman baru, bahasa pemrograman baru, teknologi atau issue seputar IT, sempatkan menulisnya di blog walau hanya 2-3 paragraf. Dengan menulis, kita mengasah kemampuan untuk menjelaskan. Semakin banyak menulis, kita semakin tahu bagaimana cara memecah penjelasan agar mudah dimengerti. Manfaatnya? Kemampuan visualisasi kita terhadap masalah menjadi lebih baik. Ketika kita ingin melakukan sebuah task di programming, kita bisa mendapatkan gambaran bersih tentang apa saja yang harus dilakukan.</p>
<p>Seringkali, ada hal-hal yang terlewatkan dan baru kita sadari setelah kita menulis artikelnya. Contohnya, jika kita berhasil membuat fungsi untuk mencari item dengan cepat di array yang isinya sejuta member. Kita bisa memilih untuk diam dan menyimpan codenya di komputer, tanpa ada yang tahu. Atau kita bisa menulis artikelnya, pada saat artikel tersebut ditulis, kita kadang menyadari bahwa ada bagian-bagian yang kurang dari code kita yang bisa diperbaiki. Ini karena dengan menulis, kita menjelaskan ulang semua bagian dari karya yang sudah kita buat, sehingga menulis karya yang kita buat sendiri bisa dikatakan sebagai self-review.</p>
<p>Dengan menulis, kita juga jadi giat mencari bahan baru di internet, dengan fasilitas yang ada sekarang seperti RSS Reader, kita bisa mengetahui banyak sekali issue IT terbaru, terutama di bidang software development, lalu mencoba merangkumnya di tulisan kita.</p>
<p>Tentu saja manfaat yang pasti dari menulis adalah kita bisa berbagi pengetahuan dengan yang lain, dengan menulis artikel tentang pemikiran dan karya kita, orang lain bisa memberikan feedbacknya dan kita bisa banyak belajar.</p>
<h3>Aktif di komunitas</h3>
<p>Ini adalah hal yang tidak kalah penting. Terserah apakah kita suka web atau desktop programming, ataupun yang lain, aktif di komunitas adalah harus. Dengan aktif di komunitas, kita bisa berbagi feedback dengan orang lain. Menjawab pertanyaan orang lain ikut membantu mengasah kemampuan kita di software development, dan aktif bertanya dan posting di forum membuat kita lebih terbiasa dengan lingkungan software development. Kita juga bisa kenal dengan banyak orang-orang yang sudah berpengalaman melalui forum.</p>
<hr>
<p>Finally, ini adalah opini <em>singkat</em> saya bahwa sebenarnya materi pendidikan S1 saja tidak cukup jika kita memang benar-benar haus di dunia software development. Belajar secara mandiri dan konsisten akan sangat bermanfaat, banyak sekali materi ekstra yang bisa kita dapatkan di luar dunia kuliah. Saya sendiri masih junior dan belum bisa memberi tips super ampuh selain belajar dan belajar. Opini diatas sekedar pengalaman pribadi dan semoga ada manfaatnya <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://kecebongsoft.wordpress.com/2011/02/28/asah-kemampuan-software-development/feed/</wfw:commentRss>
			<slash:comments>27</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1115</post-id>
		<media:content url="https://0.gravatar.com/avatar/694c2d3881e9b88034450cc1258505531790e80beb288a2ee1df2aaae4624662?s=96&#38;d=https%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">kecebongsoft</media:title>
		</media:content>

		<media:content url="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/02/fertility_egg1.png" medium="image">
			<media:title type="html">Software Development adalah telur</media:title>
		</media:content>
	</item>
		<item>
		<title>Pilih-pilih WordPress Blog Client</title>
		<link>https://kecebongsoft.wordpress.com/2011/02/27/pilih-pilih-wordpress-blog-client/</link>
					<comments>https://kecebongsoft.wordpress.com/2011/02/27/pilih-pilih-wordpress-blog-client/#comments</comments>
		
		<dc:creator><![CDATA[kecebongsoft]]></dc:creator>
		<pubDate>Sun, 27 Feb 2011 14:15:36 +0000</pubDate>
				<category><![CDATA[Komputer]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[blog client]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[blogspot]]></category>
		<category><![CDATA[client]]></category>
		<category><![CDATA[computer]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[komputer]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[live writer]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[wlw]]></category>
		<guid isPermaLink="false">http://kecebongsoft.wordpress.com/?p=1089</guid>

					<description><![CDATA[Satu hal yang sering membuat saya malas nge-blog. Yaitu karna post editor milik WordPress terasa sangat nggak nyaman. Ya, memang editornya canggih sekali, tapi semua fitur itu membuat editornya menjadi bloat dan untuk menulis atau memasukan hal-hal ringkas butuh waktu &#8230; <a href="https://kecebongsoft.wordpress.com/2011/02/27/pilih-pilih-wordpress-blog-client/">Baca lebih lanjut <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p><img style="background-image:none;padding-left:0;padding-right:0;display:block;float:none;margin-left:auto;margin-right:auto;padding-top:0;border-width:0;" title="" border="0" alt="" src="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/02/wordpresslogo1.png?w=141&#038;h=141" width="141" height="141">Satu hal yang sering membuat saya malas <em>nge-blog</em>. Yaitu karna post editor milik WordPress terasa sangat nggak nyaman. Ya, memang editornya canggih sekali, tapi semua fitur itu membuat editornya menjadi <abbr title="berat banget!">bloat</abbr> dan untuk menulis atau memasukan hal-hal ringkas butuh waktu yang lama. Akibatnya, banyak hal-hal yang saya rasa penting tapi tidak di post karna untuk nge-load editornya saja perlu nunggu.</p>
<p>Tapi itu nggak berlangsung lama, karena ada alternatif lain untuk <em>ngepost</em> artikel, yaitu menggunakan <em>blog client</em>. Blog client adalah software yang dibuat khusus untuk menghandle aktivitas blogging seperti melakukan posting, editing, moderasi komentar, dll. Blog client di desain khusus agar bisa <em>sinkron </em>dengan layanan blog yang ada sekarang seperti WordPress, Blogger, atau LiveJournal. </p>
<p>Saat ini, ada puluhan blog client yang tersedia, mulai dari yang gratis hingga berbayar. Tapi tidak semua cocok dengan kebutuhan kita. Masalahnya adalah tiap layanan blog punya fitur-fitur unik yang belum tentu tersedia di blog client. Misalkan untuk WordPress, kita bisa memasukan gambar yang diframe dan diselipkan caption, kita juga bisa menyelipkan formatted source code. Dengan berbagai keunikan ini, kira-kira blog client apa yang paling cocok untuk WordPress?</p>
<p><span id="more-1089"></span></p>
<h3>Fitur-fitur penting WordPress</h3>
<p>Ada beberapa fitur yang saya sangat sering gunakan di WordPress, yaitu Image Caption dan <a href="https://kecebongsoft.wordpress.com/2007/09/16/cara-posting-source-code-di-wordpress/">Source Formatter</a>. Image Caption berguna ketika kita ingin menyelipkan gambar dan ingin memasang frame serta caption di gambar tersebut. Di blog saya banyak sekali gambar-gambar yang menggunakan Image Caption, selain tampilannya lebih rapi, juga akan jadi lebih informatif karena caption ditampilkan langsung dibawah gambar, berbeda dengan image <em>alt</em> dan <em>title</em> tag, yang hanya akan muncul ketika mouse di <em>hover</em>.</p>
<p>Fitur kedua adalah Source Formatter. Source Formatter sering saya gunakan untuk memasukan source code kedalam post. Dan Source Formatter milik WordPress menurut saya benar-benar bagus, banyak support languagenya, ada opsi untuk plain text, print, alternate lines, gutter, dan lain-lain. </p>
<p>Selain dua fitur utama diatas, ada banyak fitur lainnya yang saya perlukan dan hanya saya temukan di post editor bawaan WordPress. Post editor yang dimiliki wordpress menampilkan preview yang nyaris sempurna dan saya tidak perlu double check untuk memastikan tampilannya di blog saya. Jadi cukup sulit juga mencari blog client yang memenuhi fitur ini.</p>
<h3>Daftar Blog Client</h3>
<p>Ada banyak sekali blog client yang tersedia untuk WordPress, yang pernah saya coba contohnya adalah BlogJet, BlogDesk, Ecto, dan Windows Live Writer. Ini adalah list blog client yang ada untuk WordPress:</p>
<ul>
<li><a href="http://www.blogdesk.org/">BlogDesk</a>
<li><a href="http://www.codingrobots.com/blogjet/">BlogJet</a>
<li><a href="http://code.google.com/p/wp-comments-notifier/">WordPress Comments notifier</a> &#8211; open source
<li><a href="http://webstory.my/">Chrysanth WebStory</a> &#8211; 90-day trial
<li><a href="http://illuminex.com/ecto/">Ecto</a> &#8211; 21-day trial
<li><a href="http://www.lipidr.com/">LIPIDr Blog Client</a> &#8211; freeware,
<li><a href="http://office.microsoft.com/en-us/word/ha101640211033.aspx">Microsoft Word 2007</a>
<li><a href="http://bytescout.com/post2blog.html">Post2Blog</a>
<li><a href="http://qtm.blogistan.co.uk/">QTM</a>
<li><a href="http://www.qumana.com/">Qumana</a>
<li><a href="http://www.anconia.com/blog-software/">RocketPost</a>
<li><a href="http://semagic.sourceforge.net/">Semagic</a>
<li><a href="http://www.zoundryraven.com/">Zoundry Raven</a> &#8211; open source
<li><a href="http://www.wbloggar.com/">w.bloggar</a> &#8211; freeware
<li><a href="http://www.wbeditor.com/">WB Editor</a>
<li><a href="http://download.live.com/writer">Windows Live Writer</a></li>
</ul>
<p>Selain daftar blog client diatas, juga ada blog client untuk platform mobile, web, dan yang lainnya. <a href="http://codex.wordpress.org/Weblog_Client">Listnya bisa dilihat disini</a>. </p>
<p>Dari rata-rata blog client yang saya coba, kebanyakan yang sangat sulit dicari adalah Image Caption dan Source Formatter. Begitu saya nggak menemukan dua fitur tersebut, that&#8217;s it, langsung uninstall <img style="border-style:none;" class="wlEmoticon wlEmoticon-openmouthedsmile" alt="Open-mouthed smile" src="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/02/wlemoticon-openmouthedsmile.png?w=640">. Saya nggak melanjutkan mencoba fitur lain karena absennya dua fitur tadi sama artinya dengan saya harus kembali ke post editor WordPress untuk mengedit kembali post saya.</p>
<p>Pilihan terbaik menurut saya adalah Windows Live Writer, satu-satunya yang saya tidak temukan di Windows Liver Writer adalah Image Caption, tapi bisa dengan mudah diselipkan menggunakan manual tag.</p>
<h3>Tentang Windows Live Writer</h3>
<p>Saya pakai <a href="http://explore.live.com/windows-live-writer?os=other">Windows Live Writer</a> kira-kira sejak 1-2 tahun yang lalu. Pertama kali menjalankan <abbr title="Windows Live Writer">WLW</abbr>, kita akan mengkonfigurasi account blog kita, disini cukup memasukan alamat blog, username dan password. Setelah itu kita ditanya apakah akan mengimport theme atau tidak. Dengan mengimport theme, kita bisa melakukan live-preview blog kita pada saat menulis post, ini salah satu fitur kerennya WLW.</p>
<p>Ada beberapa hal yang harus saya install dan customize untuk menyesuaikan WLW dengan lingkungan blogging saya, pertama saya <em>uncheck</em> konversi dari<em> normal quotes</em> ke <em>smart quotes</em>. Selanjutnya saya juga menginstall <a href="http://richhewlett.com/wlwsourcecodeplugin/">WLW Source Code Plugin</a>. Plugin ini memungkinkan kita untuk mengepost source code dengan format default Source Formatter milik WordPress. Sisanya, semua konfigurasi WLW saya <em>leave by default</em>. </p>
<p>Ada banyak sekali alasan untuk <em>menobatkan</em> WLW sebagai blog client favorit saya:</p>
<ul>
<li>WLW dibangun dengan <em>look-and-feel</em> yang mirip dengan keluarga Microsoft Office, jadi saya tidak perlu banyak beradaptasi, dan rasanya seperti mengetik biasa, <em>no heavy load</em>.
<li>Real-time preview, sehingga kita bisa langsung melihat preview tulisan kita. Theme yang digunakan adalah sama persis dengan theme yang kita pasang di WordPress.com.
<li>Support Plugin, sehingga fitur-fitur yang lain bisa di expand melalui plugin. Plugin yang sudah beredarpun ada ratusan.
<li><abbr title="What You See Is What You Get">WYSIWYG </abbr>view dan Source View.
<li>Support multi account.
<li>Banyak options yang bisa di tweak.
<li>Tagging dan categories langsung <em>sinkron</em> dengan WordPress.com.
<li>Bisa import existing post yang ada di WordPress.
<li>Offline save, jadi nggak perlu publish ke draft, yang prosesnya lebih lama.
<li>Upload media, seperti gambar, video, langsung ke server WordPress kita (juga bisa di set ke FTP).
<li>Ada banyak plugin untuk sourcecode.
<li>User interface yang simple dan ringan.
<li>Pasting konten yang rapi.
<li>Free!</li>
</ul>
<p>Dan <em>lastly</em>, editor WLW sangat untuitif. Persis seperti Microsoft Office Word. Sehingga saya tidak perlu repot mengatur ulang elemen-elemen khusus seperti <em>ordered list</em>, gambar, video, hyperlink, source code, dan yang lainnya.</p>
<p>Masih banyak lagi fitur-fitur WLW yang menurut saya sangat cocok untuk <em>blogging </em>di WordPress platform, saat ini WLW sudah sampai ke versi 2011 dan bisa di download disini (<a href="http://explore.live.com/windows-live-writer?os=other">Download Windows Live Writer</a>).</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kecebongsoft.wordpress.com/2011/02/27/pilih-pilih-wordpress-blog-client/feed/</wfw:commentRss>
			<slash:comments>7</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1089</post-id>
		<media:content url="https://0.gravatar.com/avatar/694c2d3881e9b88034450cc1258505531790e80beb288a2ee1df2aaae4624662?s=96&#38;d=https%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">kecebongsoft</media:title>
		</media:content>

		<media:content url="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/02/wordpresslogo1.png" medium="image" />

		<media:content url="https://kecebongsoft.wordpress.com/wp-content/uploads/2011/02/wlemoticon-openmouthedsmile.png" medium="image">
			<media:title type="html">Open-mouthed smile</media:title>
		</media:content>
	</item>
		<item>
		<title>AS3: Multidimensional Sort pada Array Object.</title>
		<link>https://kecebongsoft.wordpress.com/2011/02/27/as3-multidimensional-sort-pada-array-object/</link>
					<comments>https://kecebongsoft.wordpress.com/2011/02/27/as3-multidimensional-sort-pada-array-object/#comments</comments>
		
		<dc:creator><![CDATA[kecebongsoft]]></dc:creator>
		<pubDate>Sun, 27 Feb 2011 08:05:18 +0000</pubDate>
				<category><![CDATA[Action Script]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[actionscript 3]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[coder]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flashdevelop]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[Gamedev]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[komputer]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[Tutorial]]></category>
		<guid isPermaLink="false">http://kecebongsoft.wordpress.com/?p=1046</guid>

					<description><![CDATA[Terkadang ada kondisi dimana kita mempunyai sebuah array yang isinya object, lalu kita ingin melakukan sorting array tersebut,  yang parameternya adalah member object didalam array. Contoh, jika saya punya object ini: Kemudian, saya punya vector Murid seperti ini: Sekarang, saya &#8230; <a href="https://kecebongsoft.wordpress.com/2011/02/27/as3-multidimensional-sort-pada-array-object/">Baca lebih lanjut <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>Terkadang ada kondisi dimana kita mempunyai sebuah array yang isinya object, lalu kita ingin melakukan sorting array tersebut,  yang parameternya adalah member object didalam array.</p>
<p>Contoh, jika saya punya object ini:</p>
<pre class="brush: java; title: ; notranslate">
public class Murid
{
	public var nama:String;
	public var kelas:int;
	public var nilai:int;
	public function Murid(nNama:String,nKelas:String,nNilai:String)
	{
		nama = nNama;
		kelas = nKelas;
		nilai = nNilai;
	}
}
</pre>
<p><span id="more-1046"></span></p>
<p>Kemudian, saya punya vector Murid seperti ini:</p>
<pre class="brush: java; title: ; notranslate">
vecMurid = new Vector.&amp;lt;Murid&amp;gt;();
vecMurid.push(new Murid(3, 6, &amp;quot;Tio&amp;quot;));
vecMurid.push(new Murid(1, 5, &amp;quot;Andi&amp;quot;));
vecMurid.push(new Murid(2, 8, &amp;quot;Lina&amp;quot;));
vecMurid.push(new Murid(1, 10, &amp;quot;Dedi&amp;quot;));
vecMurid.push(new Murid(2, 7, &amp;quot;Melisa&amp;quot;));
</pre>
<p>Sekarang, saya ingin mengurutkan daftar murid ini, mulai dari <strong>kelasnya yang terkecil</strong>, kemudian <strong>niainya yang terbesar</strong>, ini adalah output yang saya inginkan:</p>
<blockquote><p>Kelas 1, Nilai 10, Dedi<br />
Kelas 1, Nilai 5, Andi<br />
Kelas 2, Nilai 8, Melisa<br />
Kelas 2, Nilai 7, Lina<br />
Kelas 3, Nilai 6, Tio</p></blockquote>
<p>Inilah yang disebut multidimensional sort pada array yang berisikan object. Di ActionScript 3, kita bisa melakukan sorting ini dengan sangat mudah. <a href="http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/Array.html#sortOn()">AS3 memperkenalkan fungsi sortOn</a> yang parameternya bisa kita custom sedemikian rupa untuk melakukan pengurutan yang kompleks, sintaks generalnya adalah:</p>
<pre class="brush: java; title: ; notranslate">
array.sortOn('names','options');
</pre>
<p>Fungsi ini memungkinkan kita untuk mengurutkan sebuah array dengan berbagai parameter dan opsi. Misalkan saya ingin mengurutkan murid berdasarkan &#8216;<strong>kelas</strong>&#8216; dan &#8216;<strong>nilai</strong>&#8216;, saya bisa memasukan ini:</p>
<pre class="brush: java; title: ; notranslate">
sortOn(['kelas','nilai'],Array.DESCENDING);
</pre>
<p>Parameter pertama diatas adalah daftar keys yang akan digunakan untuk melakukan sorting, sementara parameter kedua adalah mode sorting. Tapi, kode diatas tidak akan bekerja, karena variabel <strong>vecMurid</strong> yang kita pakai adalah <strong>vector</strong>, dan isinya bukan <strong>array set</strong>. Jadi untuk kasus ini, kita akan ubah sedikit fungsi sortingnya seperti ini:</p>
<pre class="brush: java; title: ; notranslate">
public function sortMurid(vec:Vector.&amp;lt;Murid&amp;gt;):Vector.&amp;lt;Murid&amp;gt; {
	var arr:Array = new Array();
	var i:int;

	for (i = 0; i &amp;lt; vec.length; i++) {
		arr.push({kelas:vec[i].kelas,nilai:vec[i].nilai,o:vec[i]});
	}

	arr = arr.sortOn(['kelas','nilai'], [Array.NUMERIC, Array.NUMERIC | Array.DESCENDING]);

	var vec_output:Vector. = new Vector.();
	for (i = 0; i &amp;lt; arr_h.length; i++) {
		vec_output.push(arr['i']['o']);
	}
	return vec_output;
}
</pre>
<p>Pada kode diatas, kita membuat fungsi yang returnnya adalah vector Murid, dan parameternya adalah vector Murid yang telah kita buat sebelumnya. Pertama-tama kita akan menyalin semua isi dari parameter pertama kedalam sebuah array, tapi tidak hanya sekedar menyalin, kita juga menambahkan 2 buah key yaitu &#8216;<strong>kelas</strong>&#8216; dan &#8216;<strong>nilai</strong>&#8216; kedalam array tersebut. Sehingga setiap membernya adalah sebuah set yang isinya &#8216;<strong>kelas</strong>&#8216;, &#8216;<strong>nilai</strong>&#8216;, dan &#8216;<strong>o</strong>&#8216;, yaitu reference ke instance yang ada di setiap vector Murid.</p>
<p>Setelah itu, kita bisa langsung melakukan sorting dengan fungsi <strong>sortOn</strong>, parameter pertama adalah key set yang kita perlukan, yaitu &#8216;<strong>kelas</strong>&#8216; dan &#8216;<strong>nilai</strong>&#8216;. Parameter kedua adalah dua buah set opsi yang kita gunakan untuk melakukan sorting. Opsi pertama adalah &#8216;<em>Array.NUMERIC</em>&#8216;, yang artinya key &#8216;<strong>kelas</strong>&#8216; adalah set numeric yang di set secara <em>Ascending</em>. Opsi kedua adalah &#8216;<em>Array.NUMERIC | Array.DESCENDING</em>&#8216;, yang artinya key &#8216;<strong>nilai</strong>&#8216; adalah set numeric yang harus di urut secara <em>DESCENDING </em>(yang terbesar akan  muncul lebih dulu).</p>
<p>Setelah di urut, kita tinggal menyalin kembali array tersebut ke output, lalu di return ke fungsi.</p>
<p>And that&#8217;s it <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://kecebongsoft.wordpress.com/2011/02/27/as3-multidimensional-sort-pada-array-object/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1046</post-id>
		<media:content url="https://0.gravatar.com/avatar/694c2d3881e9b88034450cc1258505531790e80beb288a2ee1df2aaae4624662?s=96&#38;d=https%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">kecebongsoft</media:title>
		</media:content>
	</item>
	</channel>
</rss>
