Live data from Hacker News

How We Make Trello

blog.fogcreek.com

81–90 of 120 posts

Re: How We Make Trello

#81
This is great and all, but I really wish I knew why they won't make the audit logs accessible to users. If someone has a hack for this, I'm all ears.

Need it for compliance documentation.

Re: How We Make Trello

#82
post #17
post #14

So they create a new branch for each fix? And all developers are supposed to merge in their branch every few hours or so? Isn't it a bit of a drag?

Yes, more or less a new branch for each fix. But with git and Kiln, it's really not a drag at all; the merges are generally really easy and mostly performed by our release manager when the card makes it to 'Ready to Merge'.

Do I understand correctly that your stable 'master' branch is always ready for release? Basically it means that changes (fixes) should be relatively small, otherwise they are released via channels, correct?

Re: How We Make Trello

#83
post #72

Earlier quoted context omitted.

Everyone runs dev environments locally and tests. A dev environment is really easy to set up with mongo and node. Occasionally, we’ll put stuff on a staging environment if we want to test a database or infrastructure change. Big, experimental client changes go to the alpha channel on production.

So when you have 2 features/bug fixes in the same area, built in 2 different branches and deployed to isolated dev/test environments... the first time you might find out that they dont work well with each other is in Staging? Why wait for that when you could deploy to a common environment and catch issues sooner? Btw... I am trying to get some teams in my company to get out of branching. So trying to understand your…

That rarely happens in our experience. With our internal board, we know who is working on what and in what area of the code. Plus, all code is reviewed by someone working in the same area.

Re: How We Make Trello

#84
post #13

Earlier quoted context omitted.

Everything I've ever heard about Fog Creek indicates that they take their people seriously. Which probably makes them more likely to take their work at Fog Creek seriously. Funny how that works, huh? A lesson many, many other companies could profit from.

I agree with your point, but it requires that you hire correct right from the beginning. Spolsky (like pg, Atwood, Fried/DHH , etc.) has his pick of the litter because of well thought out essays and large base of followers. You can't simply take this attitude without having a large pipeline of people who (1) agree with you and (2) who are good. Lesson learned - creating a community or following of people (i.e. talent…

Having essays is not the only way to do it. The other way is to just be willing to wait for the right hire. At my company, we have a small engineering team so far, but we have taken a long time for each hire with the basic idea that they need to fit some key characteristics of our team. At the beginning this was actually harder to identify what was important, but now that we have a larger team there is more diversity (ideas, genders, backgrounds) and the core important tenants to us are more defined.

Re: How We Make Trello

#85
post #13

Earlier quoted context omitted.

Everything I've ever heard about Fog Creek indicates that they take their people seriously. Which probably makes them more likely to take their work at Fog Creek seriously. Funny how that works, huh? A lesson many, many other companies could profit from.

I agree with your point, but it requires that you hire correct right from the beginning. Spolsky (like pg, Atwood, Fried/DHH , etc.) has his pick of the litter because of well thought out essays and large base of followers. You can't simply take this attitude without having a large pipeline of people who (1) agree with you and (2) who are good. Lesson learned - creating a community or following of people (i.e. talent…

The essays and followers surely helped, but there are lots of basic pragmatic things you can do to make yourself a desirable employer even if you aren't a great essayist. Just some obvious ones off the top of my head:

- Have sensible working hours (30 to 40 hours a week is optimal).

- Either let people work from home, or give them private offices.

- Don't have idiotic hiring criteria like buzzword matching or college degrees. (Meta: don't have the personnel department doing the hiring.)

- Get at least the basics of tools and process right. You don't have to let people code in Lisp or Haskell, but when a candidate asks you about version control, the answer better hadn't be "oh we don't have time for that here".

- If you are requiring people to work in the office, don't quibble about things like high-spec machines and good chairs that cost a small fraction of the cost of hiring people.

Hit everything on that checklist and even if you're still not quite as sought after as Fog Creek, you'll be well out in front of most of your competitors at little cost in either time or money (and infinitely far in front of Fog Creek for any candidates who won't or can't live in New York).

Re: How We Make Trello

#86
post #71

Earlier quoted context omitted.

Not completely orthogonal. The way Trello is set up, client and server releases are completely unrelated and don't have to know about each other. The web app is almost as separate from the server as the iOS/Android apps, which isn't really possible if you're rendering html in the server. That said, I agree that making something into a single page app just to get this separation isn't going to be useful.

> which isn't really possible if you're rendering html in the server. You can have a front-end web server that is also a client of the API server and keep the separation as if it were any other API client. This is the approach I'm taking in my current project since I have to support some obsolete browsers, but more generally it lends itself to a cleaner decoupled architecture

That type of double-server architecture isn't one I'd considered. Very interesting.

Re: How We Make Trello

#87
post #13

Earlier quoted context omitted.

I agree with your point, but it requires that you hire correct right from the beginning. Spolsky (like pg, Atwood, Fried/DHH , etc.) has his pick of the litter because of well thought out essays and large base of followers. You can't simply take this attitude without having a large pipeline of people who (1) agree with you and (2) who are good. Lesson learned - creating a community or following of people (i.e. talent…

The essays and followers surely helped, but there are lots of basic pragmatic things you can do to make yourself a desirable employer even if you aren't a great essayist. Just some obvious ones off the top of my head: - Have sensible working hours (30 to 40 hours a week is optimal). - Either let people work from home, or give them private offices. - Don't have idiotic hiring criteria like buzzword matching or college…

> and infinitely far in front of Fog Creek for any candidates who won't or can't live in New York

Fog Creek actually hires remote people now. We made the change almost a year ago and its been a great source of new candidates.

Re: How We Make Trello

#88
post #78

> > The Trello API is well-written, has no bugs, and is totally rock solid. Or at > least it doesn't change very often. That means we can put out new > clients all the time without having to update the API. In fact, we can have > multiple versions of the website out at any given time.] A very counter-intuitive result: most people would not consider a stable API to let you iterate quickly!

I think the article says that the API is stable unless you have access to "Alpha" and "Beta" channels.

Alpha and Beta channels only affect what client you get. All client versions talk to the same API, so it has to be very stable/backwards compatible.

Re: How We Make Trello

#89

Earlier quoted context omitted.

The essays and followers surely helped, but there are lots of basic pragmatic things you can do to make yourself a desirable employer even if you aren't a great essayist. Just some obvious ones off the top of my head: - Have sensible working hours (30 to 40 hours a week is optimal). - Either let people work from home, or give them private offices. - Don't have idiotic hiring criteria like buzzword matching or college…

> and infinitely far in front of Fog Creek for any candidates who won't or can't live in New York Fog Creek actually hires remote people now. We made the change almost a year ago and its been a great source of new candidates.

Ah, then I happily stand corrected on that point!

Re: How We Make Trello

#90
post #58

Fog Creek are the _kings and queens_ of dogfooding. Spolsky, you sure have nurtured a group of very loyal team players. I applaud you all. It must be really nice to work at a place where the love of the process and the product are both so strong. In my opinion if there's one thing a reader should take away from this it should be that Single Page Apps and separation of server and client are The. Best. Thing. Ever. Fro…

>In my opinion if there's one thing a reader should take away from this it should be that Single Page Apps and separation of server and client are The. Best. Thing. Ever Those are two orthogonal things. All my sites have a complete separation of presentation from code and access a nice API to get data. Including the ones that are purely HTML and have no javascript at all. Single page apps are good for things that are…

Yeah, you're right, not the same. I was generalising and lumping them together as the same thing though for the sake of praising the Trello way of doing it and encouraging more people to keep the data and presentation separate. I personally like the single page app approach though for reasons other than the fact that it just creates the separation.
Post reply on HN