HNHacker News
TopNewBestAskShowJobs

garindra

179 karma · joined November 26, 2010

https://twitter.com/garindrapp
submissionscomments
garindra··on Always “hover” before you click? Wrong.
Yes -- the onclick event can be triggered by all the mouse buttons.
garindra··on Heroku releases Followers into General Availability
A question : is there any way for my application code to transparently "recognize" that (at runtime) there is a new follower PG database that is assigned to the application and that it should route some of the reads to the new follower DB? Or do I have to manually change my app's db configuration and include the new follower's address?

Does Postgres actually natively support this and is there any client library that makes use of that? I know that Zookeeper serves this sort of purpose (automatic service discovery etc.), but I have no idea whether/how it works with Postgres.

garindra··on Ask HN: How do you find time for pet projects?
You need to keep the technical architecture of the pet projects as simple as possible.

From what I can see (myself included), there's more tendency to make pet projects more technically complicated than needed (usually because they're thought of as an opportunity for technical experiment & also less responsibility if things break), and these complexity will make project context switching much, much more painful, which will lead to less time of meaningful developing.

garindra··on Data Mining 3.4 billion Web pages for $100 of EC2
I would guess the same way you do when regular servers terminate/die for whatever reason.
garindra··on AWS: Network Connectivity issues affecting EC2 in US-EAST-1
This got me wondering for quite a long time: I'm pretty sure almost all EC2 issues happen on the US east region -- why is that? Is it because it's the most used region?
garindra··on Airbnb Tech Talk: Evan Priestley of Facebook - Move Fast and Break Things
This made me crack up even more : "Written in PHP, so literally anyone can contribute, even if they have no idea how to program."
garindra··on America to immigrants: keep your entrepreneurs
Yep, this is a quite an annoyance for me.

To give you a little background : I'm a 20-year-old international student, currently pursuing a bachelor's degree at a US university, and have been employed full-time at a mid-sized software company in Silicon Valley as a UI engineer/backend developer for a year through the CPT program -- a program which basically allows international students to work at a company outside of the university as long as the line of work matches the major.

After several months of working there, my company showed interest in giving me an H1-B visa, which basically got me really excited as I, to be blunt, enjoy the work a whole lot more than college. I thought I could bypass the whole educational process and join the workforce directly. Turned out, I was wrong. When the company went through the visa process, they figured it's not possible to give out H1-B visa to foreigners without bachelor's degree. [1] It's possible to substitute the degree with I think ~7 years of professional work, but I have nowhere near that experience.

So here I am, trying to finish school as fast as I can.

[1] They just figured this out as they never offered visa to a degree-less foreign employee before.

garindra··on Sumatra's GPU harnessing now official OpenJDK project
A bit out of topic FYI -- Java and Sumatra are the names of two of the 5 major islands in Indonesia. The country has a grand total of 17,000 islands.
garindra··on PostgreSQL Database Modeler
For the people that have already tried it, is this finally a good Postgres client for the MacOSX? Haven't found any that comes close to Sequel Pro for MySQL.
garindra··on iOS6 breaks long polling
I might be wrong here, but if you're using long polling in your webapp, shouldn't you be using a randomized wildcard subdomain anyways? For example, Quora uses #.tch.quora.com as their long polling hostname, with the #-part randomized for each of the browser tab, which effectively allows for an unlimited number of concurrent connections to a single IP address.

I mean, even though Chrome allows 6+ concurrent connections to a single hostname, nothing's stopping users from opening 10 tabs of your application.

garindra··on Ask HN: What are your failed projects / ideas?
May be useful to add a secondary question to that about why you think the projects/ideas failed.
garindra··on BigScreen — Javascript library for HTML5 Fullscreen API
And some very high z-index value.
garindra··on Ask HN: Google Chromebook - anybody using it for web development?
Have you tried using Browserstack (http://browserstack.com) to test different browsers directly from a browser tab? It's been very helpful to me, and the range of the browsers that they offer is breathtaking (they offer IE, Firefox, Chrome, Opera, iOS, Android, Opera Mini, pretty much almost everything in both mobile and desktop platform.)
garindra··on Heroku is down
You actually have the option to enable SSL both on (customer->cloudflare) and (cloudflare->your server).
garindra··on Heroku is down
I always use Cloudflare in front of Heroku; mainly because of that and the cheap & simple SSL set-up that they have.
garindra··on Heroku is down
Status update on https://status.heroku.com/incidents/372 :

"We have confirmed widespread errors on the platform. Our engineers are continuing to investigate."

garindra··on Anders Hejlsberg: You Can't Maintain Large Programs in JavaScript.
Let me explain to you the two large projects that I'm currently working on that are both using Require.js (it's hard to explain one without the other):

The first is basically a web framework that lets you compose a fully working website from a whole slew of independent, pre-built, unique components. Each component is made of Require.js modules (like its own HTML, CSS, JS). This isn't exactly the largest project, but Require.js really comes in handy with its ability to conditionally load modules (or components, in this context.) because you simply won't use all the components in the system, and also its ability to treat pure text file as regular modules (for HTML and CSS part of the components).

The second is a visual drag-and-drop web builder that lets you visually build a working end product of the first project that I mentioned. This is a large project simply because there's usually quite a lot of that you have to do in order to make a completely visual system work. I simply can't imagine building this system without explicit module dependency that require.js enables.

garindra··on Anders Hejlsberg: You Can't Maintain Large Programs in JavaScript.
Your 4 points are exactly why I always use Require.js, Backbone, and Underscore in all my large projects.

Require.js solves point #1 and point #3. Backbone solves point #2. Underscore solves, well, point #4.

In my experience, the other important thing to maintain coherence and sanity while creating large JS apps is to have a system that makes dependencies between modules very, very clear. Require.js basically also does that for me; it requires every module to define their dependency on other modules on top of its file.

I highly recommend people creating large JS apps to at least check it out : http://requirejs.org/

garindra··on Collusion - iPad pen productivity solved
This is the demo video you're talking about : http://www.youtube.com/watch?v=vOvQCPLkPt4
garindra··on Lucid dreaming: Rise of a nocturnal hobby
Memory integrity is definitely an important thing in order to get any decent result out of a supposedly productive lucid dream, but can't it be improved by "training" though? I remember reading through a lucid dreaming thread on Reddit, and they said you can actually train yourself and have increasingly stable lucid dreams overtime; I would think memory integrity is one huge part of the whole dream stability spectrum.
garindra··on Lucid dreaming: Rise of a nocturnal hobby
This is a question that I've had for quite a long time about lucid dreaming : is it possible to use the lucid dream time as a time to think deeply about things that usually require a lot of real world time but don't usually require access to real-world material?

For example (this list is completely non-exhaustive):

1. figure out high-level software architectural design

2. write the high-level plot of a novel

3. think how to solve personal problems (personal relationships, etc.)

4. come up with product marketing campaign ideas

etc.

I know this defeats the purpose of sleep itself, which is to completely let the brain to rest completely, but I'm genuinely wondering.

garindra··on Parse launches JavaScript SDK: Parse for Websites
I'm thinking that this would only work for relatively simple apps though. There might be cases where the functionalities in your apps could only be supported by server-side infrastructure, like uploading files, resizing images, emailing, cron jobs, etc.

What would be really nice is if Parse had a way to somehow plug in existing backend infrastructure to Parse's data model.

Edit : I take it back. Parse has a REST API.

garindra··on Twitter Rolls Twitter.com Back to a Server-Side Architecture
They can technically look at the referrer header value and look at the URL path of the referring page.
garindra··on Pinterest Architecture Update - 18M Visitors, 10x Growth, 12 Employees, 410 TB
Even simpler : Django + SQL in Heroku.
garindra··on Why I Desperately Needed to Learn to Code
I didn't notice it before I saw your comment; I then tried it, and as a result, gave the "kudo" by accident too. This is a great example of beauty/fanciness != good user experience. There's no way to "unkudo" either, sigh..
garindra··on Tips for Python & Django on Heroku, Testing, and more from a RoR developer
I had the same problem as #6 too (Heroku forcing you to install psycopg2 even though you're using a different database). The reason for this is because Heroku post-deploy script reads the DATABASE_URL config variable (which defaults to Heroku's Postgres shared database) and inserts it automatically to your Django database settings.

If you want to use a different database and not want to be forced to install pyscopg2, what you have to do is change that DATABASE_URL variable to something that corresponds to your database, and Heroku will act accordingly.

garindra··on A Python Mystery
This is because all integers between -5 and 256 in CPython are "cached", so they all have the same identity (hence the True return value of the `is` of the second comparison -- it's between the range).

http://stackoverflow.com/questions/306313/python-is-operator...

garindra··on Some Investors May Request Protection From Aqui-Hires
Yes, it was Facebook.
garindra··on Ginger Tech Stack (Realtime + Django)
We use Tornadio2 along with Pika (with the IOLoop sharing) for an internal project and it's been great.
garindra··on CoffeeScript 1.3.0 is out
No IcedCoffeescript's await and defer integration yet? Will we ever see them in Coffeescript's core?
← PreviousPage 2 of 3Next →