Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 236 lines (119 sloc) 13.851 kB
601f25c Site updated at 2012-06-02 22:06:16 UTC
Divya Manian authored
1
2 <!doctype html>
3 <!--[if lt IE 9]> <html class="no-js oldie" lang="en"> <![endif]-->
4 <head>
5 <meta charset="utf-8">
6 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
7 <title> Interviews with Singapore's Next Generation Hackers: Herryanto Siatono. | Divya Manian</title>
8 <meta name="author" content="Divya Manian">
9
10 <meta name="description" content="This is the second interview in the series of interviewing Web 2.0 hackers from Singapore. Today we get to see Herry. Herry is a hacker and a &hellip;">
11
12
13 <meta name="viewport" content="width=device-width, initial-scale=1">
14
15
16 <link rel="canonical" href="http://nimbupani.github.com/interviews-with-singapores-next-generation-hackers-herryanto-siatono.html">
17 <link href="/stylesheets/screen.css" rel="stylesheet">
18 <link href="http://feeds.feedburner.com/nimbupani" rel="alternate" title="Subscribe" type="application/atom+xml">
19 <link href="http://feeds.feedburner.com/nimbu" rel="alternate" title="Subscribe to Web Development updates" type="application/atom+xml">
20
21 </head>
22
23
24 <body >
25 <div class="container">
26 <div class="content">
27 <header role="banner"> <h1><a href="/">Divya Manian</a></h1>
28
29 <h2><a class="twitter" href="https://twitter.com/divya">twitter</a> <a class="rss" href="http://feeds.feedburner.com/nimbupani">RSS Feed</a> <a class="youtube" href="http://youtube.com/nimbupani">Youtube Channel</a> <a class="github" href="https://github.com/nimbupani">Github</a></h2>
30
31 </header>
32 <nav class="sitenav"><a href="/">Home</a>
33 <a href="/archives">Archives</a>
34 <a href="/about.html">About</a>
35 </nav>
36
37
38
39
40
41
42
43
44 <article>
45 <nav class="article">
46
5dc1495 Site updated at 2012-06-26 03:50:17 UTC
Divya Manian authored
47 <a class="previous" href="/100-mbps-where-is-my-100mbps.html" title=" 100 Mbps...Where is my 100Mbps">&#x276C;</a>
601f25c Site updated at 2012-06-02 22:06:16 UTC
Divya Manian authored
48
49
5dc1495 Site updated at 2012-06-26 03:50:17 UTC
Divya Manian authored
50 <a class="next" href="/50matches-com.html" title=" 50matches.com">&#x276D;</a>
601f25c Site updated at 2012-06-02 22:06:16 UTC
Divya Manian authored
51
52
53
54 </nav>
55 <header>
56
57
58
59
60
61
62
63 <time datetime="2007-05-12T00:00:00-07:00" pubdate><span class='month'>May</span> <span class='day'>12</span> <span class='year'>2007</span></time>
64
65 <h1 class="entry-title"><a href="/interviews-with-singapores-next-generation-hackers-herryanto-siatono.html"> Interviews with Singapore's Next Generation Hackers: Herryanto Siatono.</a></h1>
66
67
68
69
70 </header>
71 <div class="entry-content"><hr>
72
73
74 <p>This is the second interview in the series of interviewing Web 2.0 hackers from Singapore. Today we get to see <a href="http://pluitsolutions.com/about">Herry</a>. Herry is a hacker and a designer. He developed the acclaimed <a href="http://bookjetty.com/">BooJetty</a> a social book-bookmarking site that also mashes up Amazon and Singapore National Library (NLB) catalogue information. He talks about BookJetty, what it is like to be a developer and a designer, and of course, the technical aspects of BookJetty and how he gets a project off ground.</p>
75
76 <hr>
77
78
79
80
81 <h3>What drives you to create web apps like <a href="http://bookjetty.com">BookJetty</a>?</h3>
82
83
84 <p>It was to solve a problem I had, of having to swap between <a href="http://amazon.com">Amazon.com</a> and <a href="http://vistaweb.nlb.gov.sg/">Singapore NLB online catalogue site</a> &#8211; to check out if a book is worth a read and if it is available in the library.</p>
85
86 <p>At that time, I was looking for a pet project to learn more about <a href="http://www.adaptivepath.com/publications/essays/archives/000385.php">AJAX</a>, and BookJetty idea popped into my mind immediately. That was how it got started.</p>
87
88 <h3>How much time do you devote to BookJetty?</h3>
89
90
91 <p>On average 2-3 days a week, when I got bored between works for client, and on some evenings and weekends.</p>
92
93 <p>But at times, work can be so demanding; when I don&#8217;t even have much time to sleep, I have stay away from BookJetty for a while.</p>
94
95 <h3>What technologies do you use on BookJetty?</h3>
96
97
98 <p>It was originally written on <a href="http://java.sun.com">Java</a>, using <a href="http://www.hibernate.org">Hibernate</a> and <a href="http://www.springframework.org">Spring framework</a>.
99 But, again, my curiosity for a pet project to learn more about <a href="http://rubyonrails.org">Ruby On Rails</a> (RoR), pushed me to go ahead of this crazy idea of rewriting it from scratch using RoR. Lucky me, it went off smoothly, and the database is on MySQL.</p>
100
101 <p>Memory caching (<a href="http://www.danga.com/memcached/">Memcached</a>) was used to cache and speed up <abbr title="National Library Board">NLB</abbr> response, and to save on the server sessions, I pooled the session IDs.</p>
102
103 <p>As for the front-end site, the JavaScript libraries, I mainly used <a href="http://www.prototypejs.org/">Prototype</a>, <a href="http://script.aculo.us">Scriptaculous</a> and <a href="http://cross-browser.com">X-Library</a>. <abbr title="Integrated Development Environment">IDE</abbr>, none other than <a href="http://www.radrails.org">RadRails</a>. <a href="http://subversion.tigris.org">Subversion</a> for the version control, and server co-located at <a href="http://www.qala.com.sg">Qala</a>, running on <a href="http://www.ubuntu.com">Ubuntu</a>.</p>
104
105 <h3>How long did it take for you to get any web app off the ground?</h3>
106
107
108 <p>It&#8217;s a subjective question, depending on the complexity of the application and the platform you use to develop. Using <abbr title="Ruby on Rails">RoR</abbr> will be faster. :)</p>
109
110 <p>A full fledged application with testing and administration site done properly, on an average, would take about 3 months. While a quick-off-the-ground
111 application, can be done in days to weeks.</p>
112
113 <h3>How many people currently use BookJetty?</h3>
114
115
116 <p>Currently there are close to 200 registered users, mainly local users, as BookJetty only links up with Singapore <abbr title="National Library Board">NLB</abbr>, but the actual number of users using it could be more, as people don&#8217;t need to register to use BookJetty.</p>
117
118 <h3>6. What is the plan for the future of BookJetty?</h3>
119
120
121 <p>To keep developing it into a full fledged social book-bookmarking site, and to link up with more libraries, so as to open it up to the world.</p>
122
123 <h3>What challenges do you face in developing for BookJetty?</h3>
124
125
126 <p>The biggest challenge I would say the part that links it up with <abbr title="National Library Board">NLB</abbr>. It looks easy on the surface, as it is not just about passing parameters and screen scrapping.</p>
127
128 <p>In the backend, there are some sessions involved, thus the sessions have to be managed carefully, as some may have expired too; and due to the asynchronous requests from BookJetty, there is also a need to streamline and improve the query time through caching and session pooling. A lot more work than what I had thought it required.</p>
129
130 <h3>Looking back, is there anything you would have done differently with BookJetty, given the new technologies now?</h3>
131
132
133 <p>Technologically, I think I am on the right track with <abbr title="Ruby on Rails">RoR</abbr>, it is so much joy to enhance the site right now.</p>
134
135 <p>But as for the execution of BookJetty, I should have planned it for global users from the start, the on-the-fly call number availability check is God-sent, but would be quite a challenge to implement it across many libraries.</p>
136
137 <h3>What do you think you would be doing next? What do you see in your future as you develop for the web?</h3>
138
139
140 <p>I have just spent a few months working on a project collaboration system for a client, so I am thinking of spending a few more months to wrap it up as a product, and hopefully be able to learn something from this experience.</p>
141
142 <p>I&#8217;m not sure if I know about the future, the web is changing so fast. At one moment, you think this is right, later, as you learn, you think that this is stupid. But, at the end of the day, it&#8217;s always about how can we be better off with the web, and people will keep pushing the limits of what they can do with the web.</p>
143
144 <h3>You indicated in <a href="http://www.pluitsolutions.com/">your blog</a> that you took a sabbatical to learn about new technologies. How did that help? Is there anyway you think you could have done without it?</h3>
145
146
147 <p>Yeah, there is no way I could have done without it. Other than the technical gains, it also gave me a new perspective to what I believe in and what I want to pursue. The one regret I have is, why did I not do it earlier?</p>
148
149 <h3>You are also a rare species that designs and codes. How do you see the relationship between the two? Given that designers are always bickering about developers. Do you think sometimes being a developer constrains your design view (especially on the web)?</h3>
150
151
152 <p>I think the line that separates the two is getting thinner. Now that the basic needs of Create, Read, Update and Delete (CRUD) tasks have been fulfilled, we start to look further; we look at how to do things better, faster, easier, and with more joy.</p>
153
154 <p>To push beyond that limit, we need designers with some programming knowledge and programmers who know some design concepts.</p>
155
156 <p>Technorati Tags: <a class="performancingtags" href="http://technorati.com/tag/pluitsolutions" rel="tag">pluitsolutions</a>, <a class="performancingtags" href="http://technorati.com/tag/webstandards" rel="tag">webstandards</a>, <a class="performancingtags" href="http://technorati.com/tag/webdesign" rel="tag">webdesign</a>, <a class="performancingtags" href="http://technorati.com/tag/css" rel="tag">css</a>, <a class="performancingtags" href="http://technorati.com/tag/bookjetty" rel="tag">bookjetty</a>, <a class="performancingtags" href="http://technorati.com/tag/rubyonrails" rel="tag">rubyonrails</a>, <a class="performancingtags" href="http://technorati.com/tag/webapps" rel="tag">webapps</a></p>
157 </div>
158
159 <footer>
160 <p class="meta">This post was posted by
161
162
163 <a href="/about.html">Divya Manian</a>
164 on
165
166
167
168
169
170
171 <time datetime="2007-05-12T00:00:00-07:00" pubdate><span class='month'>May</span> <span class='day'>12</span> <span class='year'>2007</span></time> in
172
173 . If you would like to update this post, <a href="https://github.com/nimbupani/nimbupani.github.com/blob/source/source/_posts/2007-05-12-interviews-with-singapores-next-generation-hackers-herryanto-siatono.md">please send a pull request</a>.
174 </p>
175 </footer>
176 </article>
177
178 <section>
179 <h1>Comments</h1>
180 <div id="disqus_thread" aria-live="polite"><noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
181 </div>
182 </section>
183
184
185 </div>
186 </div>
187 <aside id="articles">
188 <p><img class="avatar"
189 src="http://a2.twimg.com/profile_images/1696865113/me_normal"
190 height=48> <a href="http://twitter.com/divya">Divya Manian</a> is a Web Developer in Seattle. <a href="/about.html">More about me ❭</a></p>
191 <h2>Posts on Web Development</h2>
2db5cff Site updated at 2012-06-18 17:59:15 UTC
Divya Manian authored
192 <ul><li><a href="/css-object-model.html">CSS Object Model</a></li><li><a href="/fake-bolding-of-web-fonts.html">Fake Bolding of Web Fonts</a></li><li><a href="/html5please-api.html">Html5please API</a></li><li><a href="/html5please.html">html5please</a></li><li><a href="/mustache.html">mustache, hogan, handlebars</a></li><li><a href="/redesign-notes.html">Redesign Notes</a></li><li><a href="/summary-of-various-exciting-css-drafts-and-proposals.html">Summary of various exciting CSS drafts and proposals</a></li><li><a href="/this-revolution-needs-new-revolutionaries.html">This revolution needs new revolutionaries</a></li><li><a href="/some-css-transition-hacks.html">Some CSS Transition hacks</a></li><li><a href="/safe-css-defaults.html">Safe CSS Defaults</a></li><li><a href="/unplugged-2011.html">Unplugged 2011</a></li><li><a href="/bokeh-with-css3-gradients.html">Bokeh with CSS3 Gradients</a></li><li><a href="/making-pure-css3-demos-better.html">Making "Pure CSS3" demos better</a></li><li><a href="/web-opener-at-opera.html">Web Opener at Opera</a></li><li><a href="/current-color-in-css.html">Current Color in CSS</a></li><li><a href="/css-vocabulary.html">CSS Vocabulary</a></li><li><a href="/active-web-development.html">Active Web Development</a></li><li><a href="/sexy-css3-buttons.html">Sexy CSS3 Buttons</a></li><li><a href="/accessible-css-barcharts.html">Accessible CSS Barcharts</a></li><li><a href="/svg-is-coming.html">SVG is coming!</a></li><li><a class="btn" href="/categories/web-development/">More</a></li></ul>
601f25c Site updated at 2012-06-02 22:06:16 UTC
Divya Manian authored
193 </aside>
194 <footer role="contentinfo"><p>
195 Copy to your heart’s content 2012 - Divya Manian -
196 <span class="credit">Powered by <a href="http://octopress.org">Octopress</a></span>
197 </p>
198
199
200 </footer>
201
202
203 <script type="text/javascript">
204 var disqus_shortname = 'nimbublog';
205 var disqus_developer = 1;
206
207
208 var disqus_url = 'http://nimbupani.com/interviews-with-singapores-next-generation-hackers-herryanto-siatono.html';
209 var disqus_identifier = 'http://nimbupani.com/interviews-with-singapores-next-generation-hackers-herryanto-siatono.html';
210
211
212
213
214 (function () {
215 var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
216 dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
217 (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
218 }());
219 </script>
220
221
222 <script src="/javascripts/octopress.js"></script>
223
224 <script>
225 var _gaq=[['_setAccount','UA-97188-1'],['_trackPageview']];
226 (function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
227 g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
228 s.parentNode.insertBefore(g,s)}(document,'script'));
229 </script>
230
231
232
233
234 </body>
235 </html>
Something went wrong with that request. Please try again.