Joel Spolsky Launches Trello - Organize Anything Together - <AUTHOR> https://trello.com <comment><USER2> Joel, serious question, if you're listening.

In the blog post, you mention that these teams are adopting the Lean Startup philosophy of ship early and ship often. Does that mean that you've softened on the "never ever write any code without a spec" dogma from "the Joel Test"?

I've personally found that when you're doing tight iterations and continuous deployment, writing old-school spec documents feels, well, old-school.

If I can go straight from human conversation w/ whiteboard sketches to working, tested code running on production servers without creating intermediate written documents, I think I'm winning.

<comment><USER3> It's more complicated than that, and it's hard to answer here.

Basically -- if you're building something big and complicated and you should know exactly how it's going to work, a big written spec really helps.

If you're building something brand new, a startup, or a crazy idea that you need to test quickly and iterate, you should use lots of little specs. It's ok if the specs aren't so fancy... a detailed map of what goes on the screen and what everything does is probably fine. It's ideal if you write lots of small specs for each small feature ("user story") right before you implement them and roll them out.

I just don't like the idea of typing code when you haven't thought through what it's supposed to do (in a disciplined way). Doing specs in small quick chunks, then writing code, is probably the best approach for lean/agile startup teams that don't yet have customer/product fit.

<comment><USER4> As someone who can't draw a thing, there's a phenomenon I've noticed that might apply. Every time I need to draw something out, I try to hold it clearly in my head, where it looks so complete, but of course it never works. My suspicion is that instead of actually seeing the details of what I want to draw in my head, my brain has filled them in with "here be details," which makes for a nice mental image but that doesn't really play so well on paper.

I also think the same thing happens when we write software with loose mental maps. Our brains fill in the gaps with "yadda yadda yadda," to make it feel complete, but really there's nothing there at all.

<comment><USER2> _As someone who can't draw a thing_

Practical suggestion that has worked for me is to use graph paper. Having the grid to align and separate things makes a huge difference. My non-graph-paper sketches look like something from a lunatic's diary in comparison.

I would be eager to try a whiteboard with a consistent faint grid to it.

<comment><USER5> +1. I can't draw a smiley face. Plain old graph paper has had a huge impact on my ability to put together satisfactory mockups. I have a pile of it sitting right next to me in fact. :-)

</comment></comment></comment></comment></comment><comment><USER6> Sniffing around the source, looks like a Backbone.js app -- cheers. I'd love to add it to the homepage as an example, if you want to email me a brief paragraph of description.

 _Edit_ For those poking around, check out the top-level "Models" namespace.

<comment><USER7> Node, Backbone, CoffeeScript and MongoDB

<comment><USER8> Any reason you didn't use Socket.io? I noticed you're polling the server every few seconds for updates.

<comment><USER9> Trello does use Socket.io. If your browser supports websockets it will use them, but it will transparently fall back to polling if necessary.

<comment><USER10> I user Chrome 14 and updates take over 5 secs to be synced across different tabs. Some kind of a bug or the backend app polls the db regularly to push new messages ?

<comment><USER9> We're scaling back a little to handle the usage spike from the initial launch, so some users will get polling even if their browsers support websockets. As the load stabilizes, we'll be switching them back on and you should see performance improve quite a bit.

</comment></comment></comment></comment></comment></comment><comment><USER11> So I honestly don't get it. Is this a poor mans bug tracker? A possible re- invention of a bug tracker? (something wacky and different version of a bug tracker to see if it sticks?)

I have seen people mention project management a bunch, but the view really isn't about viewing what people are doing. In fact items that don't have people assigned to them still show up. The 10 foot view isn't even that good as they all squares and text. At a glance you can not tell what changed recently, what is late etc.

I had to really grimace when it showed the internal team that was using it and one of the stacks was "bugs" and it had the most number of items and was scrollable. ugg Does that scale to thousands of open bugs (or how about just 50)?

So either this is for all of those people who have never discovered the overview page of their bug tracker or maybe it is trying an experiment to see if the process of creating a bug tracker for a project is too difficult and here you just click "new project" and blam done and later on you export it to a real bug tracker... Maybe this is all just tricking users into using a bug tracker without them knowing?

Anyone get the same feeling?

<comment><USER12> In my view this looks like a great tool for agile workflow. A replacement for the board with sticky notes.

regarding the scale ... most if not all bug-trackers become a junk yard of bug reports. thousands of them. most never get fixed. lots never get looked at. This tool lets you store things that you are going to do in the _near_ future. And the rest... lets deal with it when we get there. I think if you can't remember it a month from now, it probably not important.

In any real project you can never deal with all the bugs and reports. so you usually deal with the most serious ones and the ones that get reported most often. the important ones go on todo right away, and the often reported ones do not need another place for them. people will keep reporting until you deal ;)

so this tool is effectively lets you plan your activities in the short and medium term. once you get to the 'next year' you will have other priorities and new things to do. there is no need to plan it now.

Im definitely going to try it. Currently we mostly work with Pivotal Tracker and also trying out Trajectory from Thoughtbot. It looks like Trello might be a decent contender in the space.

<comment><USER13> In looking at it, it looks much more generic than Pivotal Tracker (which I'm a current heavy user of and absolutely adore).

Pivotal Tracker is very focused on being an agile workflow tool. You enter a card, estimate it, start it, deliver it, and then it gets accepted or rejected. This is great for agile projects. Where it falls down is if you want to use it for non-development efforts, like say a marketing project, or building a new data center. Projects where that workflow doesn't really apply.

In my opinion, this is where Trello seems like it could shine. It's one tool that everyone can use to manage their work.

I don't see myself leaving Pivotal Tracker any time soon, but I will definitely keep an eye on Trello.

</comment></comment></comment><comment><USER14> Oh you US people, I get internal server error when I try to activate account which contains ä character in the full name field...

And when trying to change my name from the account page: Display Name can only contain letters, numbers, spaces, or the following characters: -_'.@+

Does this affect the Google account login also, it doesn't work for me either.

<comment><USER15> Python sucks at unicode, maybe they used python, not sure though.

<comment><USER16> Off topic: Proper, consistent and through UTF-8 support is one of the various reasons I'm starting to prefer Go to Pytho. It is sad that Python 3 didn't take the opportunity to properly fix this.

<comment><USER17> I thought Python3 sort-of did fix it, by forcing strings to be (abstractly) unicode and force you to explicit convert them to bytes with whichever codec you want (e.g. utf-8) when you need to.

What are you missing?

</comment></comment></comment></comment><comment><USER18> Originally posted this on the announcement blogpost, but my comment is still awaiting moderation, and joel is posting here. :-)

Several major +1s: 1) Use of Google login, with ability to set a password to log in without that. I LOVE this, and it fits with what Joel (and Jeff Atwood) have been proselytizing for a while about the use of OpenID.

2) Awesome, responsive UI.

Also a few -1s: 1) No indication about pricing plans. Is this going to cost money one day? EDIT: I see now that you mention in the blog post that it's free. And the site says "Creating an account is free and easy", but you know how often sites say that but mean "creating an account is easy, but to use our software in any meaningful way you'll have to pay."

2) I had a problem when I created a new board. The UI took a while to respond, during which time I got confused, created another new board with the same name, and ended up with two new boards with the same name.

Suggestion: The menu that opens when you click the arrow in the corner of a card should open with right-click as well. This is how assembla's card board works, and I like it that way.

Suggestion: Labels should take one click, rather than two. On the menu row for labels just have six colored squares to click on. Maybe that won't work so well for smartphone users, but for a desktop, I'd rather save the click.

<comment><USER18> What do the colored squares over my avatar mean?

<comment><USER19> It indicates your online status.

Green: Online and active, Yellow: Online, but inactive, Grey: Not online

When someone is online it means that they're connected to Trello, but they're not necessarily looking at the same board as you.

<comment><USER20> Thanks for explaining that. I would have expected mouseover text for those like there is for the blue square.

</comment></comment></comment></comment><comment><USER21> It definitely has all the trappings of a Fog Creek app: \- The overall UI: built by programmers who dabble in design \- A seven(!) minute video about how _simple_ it is to use. It's easy! Instead of just raising your hand, you mark a light on the corresponding tote board, which informs your manager that you need more information.

I hate to be contrarian, but there are many other apps out there that solve this problem much more succinctly. I'm not sure who thought a solution like this is needed.

Also: "lemmur"

<comment><USER22> OK, but can you give us some specific improvements you'd make? Or parts of the design that you'd change?

<comment><USER21> Sure, I do have a contracting fee for such occasions :)

<comment><USER23> Wow. So your pitch is "Your app sucks. Give me $1k and I'll tell you why"? Does this ever actually work?

<comment><USER21> Wow, tough crowd. It was a joke. No more bad jokes on HN. Got it.

</comment></comment></comment></comment></comment><comment><USER24> Joel's never-fails-to-be-amusing blog post about it, here: <http://blog.trello.com/launch/>

</comment><comment><USER25> I showed this to my manager, and he responded:

"Holy shit. This is EXACTLY what I was envisioning. This is freaking AWESOME. Since the data is stored outside of [our company], security might have a conniption fit if they found out that we were using this for managing internal project data.

I'm certain a tool like this could be highly useful to many other teams..."

Can Trello address this concern?

<comment><USER26> You want Joel to send someone in to give security a slap?

</comment></comment><comment><USER27> Damn this is pretty similar to the direction my app Wallboardr is taking, except status columns aren't customisable yet.

Any thoughts on comparison folks? <http://wallboardr.com>

<comment><USER28> The Trello site is written in plain English - it's easy for anyone to think of ways they could use Trello. The Walboardr site is full of 'buzzwords' that make it attractive to a segment of the market ('swimlanes', 'burn-up charts', 'points per status', 'backlog', 'iteration' etc.). Trello looks like it's trying to be a general purpose tool, Wallboardr does not.

Note that this isn't a value judgement - if it's _intended_ to be a niche product that's really appealing to one market segment (so they'd always choose it over e.g. Trello because of its specialization), that could be a good thing.

<comment><USER27> Hi jrmg, thanks for the great feedback.

I initially wanted Wallboardr to be a fairly free-form board that wasn't specific to any industry, but as it developed I thought that approach was lacking in power for my primary audience which was definitely developers.

But it's very interesting to see what Joel and the guys/girls have done because I think they are hitting a sweet spot between power, simplicity and industry-neutrality.

</comment></comment></comment><comment><USER29> Interestingly doesn't work in IE8...

Only found out because I wanted to view the source and it failed in Chrome so tried IE (turned out view source failed because of the load on the server atm).

Joel, btw, the favicon's missing, it's explicitly referenced in the source but returns a 404.

EDIT: Forgot to say like the look of it, good job.

<comment><USER3> Thanks for the nice words! I'm not sure about IE8, but, this being a new product, I specifically told the team not to worry about any non-current browsers. By the time this product hits its stride, IE14 will be shipping.

<comment><USER30> Too bad XP users will still be stuck with IE8 ;)

<comment><USER31> or latest Firefox, Chrome, Safari or Opera

</comment></comment></comment></comment><comment><USER32> This looks really cool. I'm excited to try it out, individually and with others.

Even better that you can immediately sign up and give it a try. As opposed to Asana, which has similar intentions, but is doing a private beta with larger companies only. Yes, Trello is much easier to get excited about.

EDIT

Some feedback: so far I really like it. It's intuitive. And it has some nice features out of the box that are lacking in other products such as assignment and voting. Assignment allows central authorities to exist, as well as hand- offs between people. Voting is awesome. I immediately see two uses for this: democratizing, and to allow collaborators to vote on what they _want_ to do. The latter being something I've always personally wanted in a collaboration tool. Combining that with a central authority can be very powerful by allowing people to voice their interests, yet keep the project moving and avoid conflict.

As for the initial reaction: some of the views are pretty intimidating. Even thought there's _only_ three lists at the start, it is still a little much to begin with. A lot to take in. If you ever implement a "minimize list" feature, that could easily reduce the noise for a beginner while still allowing you to explore all the features when you're ready to.

The edit screen has a lot happening in it too, but I think that's less of a problem since it's only visible when actually editing cards and you'll soon be using everything in there.

Also, I'm sure it's already in the works, but keyboard navigation will be huge for upcoming power users. Right now Vimium provides that for me, but it'd be great to have it built in.

It looks very useful! I'm already having fun with it and I'll try it out on an upcoming collaboration. Is there going to be a UserVoice (or similar) site anywhere for additional feedback? I'll happily leave this and other feedback there.

<comment><USER33> being an asana user for few months, I just registered and used it for a small project.

Quite confusing, not sure which one is better!

<comment><USER32> Awesome. How did you like Asana?

I was really excited about their initiative when I first heard of it. My day job at the time _really_ needed it, or something like it. But it was private, and PM wouldn't jump on anything without seeing it in action, so that had no traction.

</comment></comment></comment><comment><USER34> The idea of "flipping" the card over so you can see lots of details fixes my main beef with Pivotal Tracker: everything is so tiny (seriously, attach a screen shot and try to look at it) and you only get a certain amount of space for comments.

This looks like you could have a real discussion on the back of the card.

</comment><comment><USER35> "vote" is a little weird... Everything about this is pretty intuitive except for that. It's only mentioned once on the summary/info page and in the welcome board after signup there should be a card that explains what voting is supposed to be, exactly. (besides just the ubiquitous like equivalent)

I get the impression this started out with "voting" more prominent than it is now.

But otherwise, this is really pretty neat. One of the first hosted solutions I've been interested in since I got tired of basecamp.

<comment><USER3> Voting is actually a kind of "test of concept" of the idea of Trello Plugins which enhance Trello boards in interesting ways that not everyone necessarily uses

<comment><USER18> If it's a plugin, can I disable it? In a team of 3 developers, this makes no sense.

<comment><USER7> _Edit_ You CAN disable voting by going to Preferences under the main board menu.

(Disregard the following.)

Currently, no, because it's kind of a half plugin.

You can ignore it, though, nothing really changes if someone happens to vote on something. But internally, we've already found it quite useful for things like helping decide a name of a new project and voting on features.

</comment></comment></comment></comment><comment><USER36> Joel has finally escaped the Microsoft stack! Welcome to the exciting, crazy and raw world of real software - I think you're going to love it.

</comment><comment><USER37> Looks promising, but two things jump out at me.

My first question is _where's the API?_ This is something I plan to use but I will want some way to export the information to non-users, dead trees, etc. (I'd need it anyway for private boards, _The boss wants it in excel_ etc.)

I'd also like to question the wisdom of closing the 'public' content off from non-users. _Choosing 'Public' will make the board visible to all Trello users._ Very closed-web, I don't use Orkut anymore and I wouldn't be on github if it wasn't so visible and ubiquitous. Not a complaint, just food for thought.

<comment><USER38> We were in private beta until today, and changing that wording got missed. Public boards are, in fact, visible to anyone, regardless of whether they're logged in.

<comment><USER37> Oh, very cool.

</comment></comment></comment><comment><USER39> I don't like this, it's telling me to go upgrade my browser as punishment for having the wrong user agent. When I'm trying to have privacy.

My agent:

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:18.104.22.168) Gecko/20091221 Firefox/3.5.7

I'm using 6.0.2 browser, however.

It's a pretty common user agent: <https://panopticlick.eff.org/index.php> Eff does not provide the most common user agents list so I have no idea what's latest user agent to use. Many web statistic collectors also don't mention user agents.

<comment><USER40> This product was designed to do a really good job helping people that have to get things done. Like any other software project, they must have had thousands of issues and limited resources to fix them, so they had to triage. With all due respect, the kinds of users that spoof their user agent to protect their privacy is probably fairly low on their priority list.

<comment><USER39> "Thousands of issues and limited resources to fix them"? They seem to have the resources to make it by design to block such user agents rather than advising users to upgrade.

<comment><USER12> yeah. and people will ignore the warning, continue to use the app and then complain that it doesn't work wasting everybody's time.

</comment></comment></comment></comment><comment><USER41> So this is Basecamp + Backpack, modernized and combined?

<comment><USER42> I actually thought 'Wave for Business' at first glance due to the the more free-form nature.

<comment><USER43> I thought Pivotal Tracker, but more general.

<comment><USER44> I only saw a lot of facebook-like streams, avatar pictures and a lot of other bling making it hard to see what's actually going on.

</comment></comment></comment></comment><comment><USER45> This looks really great. I've been wanting to write something like this for use in our small-ish team, but there is probably really no point if we have this.

I would love to see more e-mail integration: someone mentioned mailing in to it to create a card, which could be pretty cool, but probably just as importantly I'd like for it to have options to send us e-mail when cards change. Some people like getting notifications pushed to them via e-mail versus having to check the site.

Thanks for writing this!

</comment><comment><USER46> This is really cool. I like it a lot. But I think "organize everything" is a bit of a hyperbolic catchphrase. It seems to be very task-oriented. It doesn't feel like something you can just throw random ideas, say for a screenplay, into to organize them.

Still, as long as it stays free or even inexpensive it might be my goto tool for task management. I'll need to try it. I like that it works on my iPad without much fuss.

</comment><comment><USER47> Wow, this is seriously great. The one thing that stood out to me (from the blog post) was the wall of 42" Plasmas in the office just for displaying Trello. While obviously not everyone can afford a wall of TVs it really would be nice to have a way that everyone could always see who should be working on / is responsible for what.

I imagine a board for "existing modules / features" That has the current "responsible" person for that item.. and a "new feature" board that has an easy way for people to see who is currently implementing said new feature. Though that would overlap somewhat with fogbugz (search for the task and see who it is assigned to) the board would have the advantage of being more high level and still being easily visible after a task is complete.

Joel (or FogCreek persons), I'm using fogbugz / kiln at home and for my side projects is there some plan to provide integration with those existing projects? Magically linking based on case numbers? Updatet he responsible person on a card based on who is currently assigned some case number?

<comment><USER47> I'm starting to use the service now and it immediately occurs to me that an excellent feature would be the ability to forward an email and have it create a board / card for me a la fogbugz.

</comment></comment><comment><USER48> Very slick UI, the use cases are virtually endless.

How about email integration where you can forward emails to different lists? Is there an API that we can integrate with Mailgun?

Use case I had in mind is for a sales funnel (or any funnel) where I can bcc the list corresponding with the stage in the funnel as I am corresponding with a lead and have the email move through the lists accordingly.

</comment><comment><USER49> It's funny how the tiniest moments can really give you a glimpse of the type of person someone is.

For instance, in that demo video, at the end when Angella Kim makes the reference to Jello (in the heat of the moment) was one of those moments that makes me want to just give her a hug and put her in my pocket.

Also, this product looks good. I am wondering though, what will this cost and how will I be charged.

I hate that it just says free right now...with no indication about how this will be maintained.

I would hate to start using this, just to see it disappear in a few months - because it was free only. I know that if they are wildly successful and it starts racking up big bills they can charge for it, but I want to know how will that affect me. I trust Joel to do what's right by early users, but this is a concern I have with new stuff that I don't see a sustainable path.

I will probably still create an account, but not knowing whether this can be around, or I will be charged in 6 months after I am addicted is a bit annoying.

<comment><USER50> Angela was just as nice in person as she appears to be in the video.

</comment></comment><comment><USER51> I'm using this already. I'm managing 3 clients right now and I already can see the benefits. I can see everything - so will my brother (co-hacker) when he accepts the invite! I'm using this as a to-do list.

I'm still going to use this with caution. I do not want to rely heavily on something that I could not afford in the future.

Hopefully, the pricing/freemium will not make me back-out.

</comment><comment><USER52> My first impression is that Trello isn't a (good) product (yet) but it will certainly leverage on Joel's marketing machine.

Observations: The organization information should not be public by default. I haven't found a way to delete an organization (is it there?).

The interface is unusable on iPad/mobile.

The card pop-up window is hard to use when there's some actual information attached to it. The bird's eye view is confusing and offers little information.

Activity log grows fast with information I would not need: voting events, add/remove members, etc. Make two activity logs, one with useful information and one with tracking (investigation) information.

In Opera and Chrome the red connection establishing notice appears all the time.

The in/out/public permissions are easy to use, but users may actually need more granularity.

</comment><comment><USER53> Most exciting thing about it is that it's written in CoffeeScript & Node.js.

I really do have a feeling the combination of the two is going to be the Ruby On Rails of this generation of the web. And the shift from server-side development to client-side is going to be a huge one.

</comment><comment><USER54> I love checklists, but could you please add task dependency and Gantt chart support?

<comment><USER55> Upvoted for presumed satire.

</comment></comment><comment><USER56> Seems like a simple Kanban (<http://en.wikipedia.org/wiki/Kanban>) board. I'm not sure why this is new, there are a lot of options for Kanban out there.

<comment><USER57> a) its free b) its free :D

Most of the kanban boards out there worth their salt cost some serious pennies if scaled to a large team!

plus... as far as I know Trello doesn't have the functionality for WIP Limits

This board also integrates nicely with GoogleApps, if it has integration with tfs (not sure if it does) then it would stand a good chance of owning a piece of the PM scene in .net land

</comment></comment><comment><USER58> This is pretty good. And even better its free. How are you going to pay for this? Premium accounts or something?

<comment><USER20> Hopefully they will pay for it with Stackoverflow ad revenue.

</comment></comment><comment><USER59> Looks pretty awesome in my 5 min trial. Back of the card is very well done.

This will could go way beyond the software crowd to a general organization app..I just hope this thing scales well and they clarify their upload limits and such.

Edit 1: I tried their iPhone app and it's very far from their web interface - took me 6-7 clicks just to get to a checklist for one of the items. It's commendable that they have a app on launch though so I am sure they will work out the app interface with time - currently it's an order of magnitude less usable than their webapp.

<comment><USER60> One of the devs whipped the iPhone app up in essentially 2 weeks after some of our earlier plans with a contractor fell through. It was literally meant to be there on launch read-only. We know it's got a ways to go, but given the time constraints it was the best we could do (IMHO it was better than anything I thought we'd be able to do... Justin really cranked on it)

</comment></comment><comment><USER61> This is a very good organizing tool. Reasons:

\- I do the exact same thing, but using post-its. Here is a photo of one of my early methods: <http://i.imgur.com/hEVtT.jpg>. Later I started using post-its for the tasks, so that they could be resorted.

\- I was thinking of making the exact same app, by converting by manual process mentioned above to an automated one. Design docs: <http://i.imgur.com/VGtJI.jpg>. Here is the Adobe Air version of the application done by an intern in a few days: <http://wikisend.com/download/962662/FinalVersion.air>

\- The most important productivity reasons that I noticed AFTER using this method were: 1) Limits to a few projects on my screen at at time 2) Can assign priorities by drag-drop (or unstick and paste) 3) Can see projects and tasks in one look

\- The point is, that if I had time to develop an app to automate my manual workflow, Trello would have been the exact type of app I would have made, verifying that software development project managers are also going this route.

</comment><comment><USER62> Seems very similar to AgileZen, but more basic: <http://agilezen.com/>

Seems interesting anyways. Really love the interface.

</comment><comment><USER63> How is this going to be monetised? I want to use it but just want to make sure we don't get too excited/committed if it's going to cost a lot of money!

<comment><USER64> The blog post implies freemium.

> It's free. (We might charge something for premium features in the future). > You can make one board or 100.

</comment></comment><comment><USER65> Joel, you must have been to one of my clients that have a giant whiteboard of post-it notes doing something similar.

I think this might be your best product yet.

</comment><comment><USER66> would be nice if you could purchase an installable paid version for internal company use. It looks like a step up from pivotal tracker

playing with an account now, the drop and drop has a nice little effect on it. Promising!

</comment><comment><USER67> I tried to solve this using WhoIsWorkingOnWhat.com (hn submission: <http://news.ycombinator.com/item?id=1979671>). It didn't get much traction. I was obviously a no match to Joel. I am thinking of open sourcing the app when I get some time to clean it up.

</comment><comment><USER68> _Great_ app and highly intuitive.

The home page clearly explain what the software does, the signup process is really simple and straightforward, and it's free.

Once you get inside, you have a _fake_ board which is there to help you get started.. It took me 2 minutes to try and __understand __how everything worked. No magic, no complicated features.. really simple and intuitive.

I love the "reverse of a card" concept, the small animations when you drag a card, how you can easily "add people" to cards, how an avatar is automatically generated for you (With your first letter and a small icon), and more importantly, how there're just a few well-done features instead of a thousand of useless and over complicated stuff.

Furthurmore, it seems that the app introduce the concept of plugins where anyone could potentially incorporate only the features _they_ want.

Overall, 10/10, great app!

<comment><USER69> Thanks! We're glad you like it and found it easy to use.

</comment></comment><comment><USER70> Does it look a bit more complicated and crowded version of Co-human? <http://www.cohuman.com/>

I'm on the fence, I kinda like both and love neither. Especially so far none of these organization tools helped me to be more efficient. I guess I'm holding them wrong.

</comment><comment><USER71> I'll just leave this here: <http://www.kanbanpad.com>

<comment><USER28> Do you work on this?

It looks intriguing to me, and the page does give the impression that it's nicely designed, but I have no idea what it does. Something to do with tasks, and project management, and it "works on mobile too". Maybe I'm expected to know already kanban, what it brings to project management, and how it works?

Watching the Trello video, and browsing around the <http://trello.com/> landing page, I immediately have ideas about how I could be using Trello - that's not the case on <http://www.kanbanpad.com/>.

<comment><USER71> I do.

Thank you. Good point.

We try to lower the barrier to entry so much so, that if you just type your e-mail and hit "let's go" you can already start playing with it, instead of having to watch a video.

However we are putting together a nicely animated video that should explain it with a nice elevator pitch.

Thanks for the feedback.

</comment></comment></comment><comment><USER72> You can actually view the live Trello Development board itself here:

[https://trello.com/board/trello- development/4d5ea62fd76aa113...](https://trello.com/board/trello- development/4d5ea62fd76aa1136000000c)

I'm impressed they're so transparent with their development process.

<comment><USER73> It's mostly read-only, which you'd expect. Except I was surprised I was aloud to vote on their cards. I wonder what prompted that design decision.

<comment><USER38> Voting and commenting on public boards can be allowed for everyone, restricted to members, or turned off. We chose to leave it on because we like the aspect of simple, quick feedback on where things are going.

</comment></comment></comment><comment><USER74> Played around for a few minutes.. I didn't see a quick way to filter the view to only the non-archived cards that you (or any other single person) are a member of. If you start to build up tons of boards/cards, is there a way to quickly filter the view like this?

<comment><USER75> I expected this would show up when you clicked a person's avatar, but it didn't. Expected it would show something of a personal to-do list.

<comment><USER74> In general, I think more work is needed if the numbers of everything (members, cards, etc) all scale to large numbers. I love the interface and would actually like to have this internally, but I worry that things would get out of hand quickly. I think board hierarchy (nest boards within boards) could go a ways towards making it better, but I'd have to play with it. They should try scaling up to large numbers of boards/cards (1000?) to which you are a participant and see if any of the concepts need tweaking.

</comment></comment></comment><comment><USER76> Seems to be down. I'm curious... nodejs problems? SSL?

<comment><USER60> TCP queue connection problems. We had a load balancer configuration issue. We're watching closely.

<comment><USER76> Thanks. Back up now and looks great.

<comment><USER77> Down again, from the youtube video I saw and the blogpost, it looks fantastic.

<comment><USER78> Load balancer config issue, should be all set now.

</comment></comment></comment></comment></comment><comment><USER79> Looks similar to Jira's GreenHopper (<http://www.atlassian.com/software/greenhopper/>), each tracker issue is one card, and you can see what's in progress, todos and what has been done.

</comment><comment><USER80> Joel's presentation at TechCrunch Distrupt:

[http://techcrunch.com/2011/09/13/joel-spolskys-trello-is- a-s...](http://techcrunch.com/2011/09/13/joel-spolskys-trello-is-a-simple- workflow-and-list-manager-for-groups/)

</comment><comment><USER81> From the js source -

This application uses other third-party javascript components distributed under appropriate licenses. For more information, see the following files at <http://trello.com/js/lib/>

backbone.js,

highcharts.js,

json2.js,

markdown.js,

socket.io.js,

underscore.js,

...apart from jquery/jquery-ui.

</comment><comment><USER82> Joel - if you're still reading this thread (it's getting long) - I've been looking for a tool like this for a long time, but the lynchpin for me is the ability to track work hours so I can bill against it. I constantly run into tools that either let me track time or projects but rarely both in a way that works. This web app works well, but without time management, I'm forced to track the very same projects in another system for the sole purpose of billing. Oh what can we do here? At the very least, is there an API where we can add time tracking and billing to this?

I hope you'll see this comment!

</comment><comment><USER83> Since reading the news about the release, I thought I'd try it out on a wee project I'm working on. So today, I tried to remember the name, and guess what? I did. Good job with that. I went to Trello.com, and found out I could just click the login with Google button. Yes! No forms or anything. I'm happy. I'm now logged in and it's taken me a total of 3 minutes to get fairly comfortable and start work.

Thank you so much for this service. I hope free accounts are grandfathered in :)

p.s - Please make it so that I can invite more than one person per click.

</comment><comment><USER84> It looks so similar to KanbanTool [<http://kanbantool.com>] (intuitive UI, board, easy drag&drop, comments etc.) - but it is much less customisable and powerful.

I'm just wondering if Trello is a finished product or do you guys planning to implement real-time updates, notifications, history, more customisation, priorities and any features like KanbanTool has at the moment?

And is there enough place on Kanban market for another tool?

</comment><comment><USER85> So I guess with the top navigation bar of Fogcreek.com having lots of available space, we can expect to see a lot of new offerings from Joel and company?

</comment><comment><USER86> This is really great, I like that the board is basically set to a kanban when you start. A api would be really cool so I could sync my github issues.

</comment><comment><USER75> Can someone confirm a bug or let me know if it's just my browser? (Firefox/XP)

View back of a card in the first list. Choose Move.... Try to move it to a specific position (2nd, for example) on another list (in my case, the third/final list). For me, it just goes to the top of the list.

Edit: Tried to use this move method (rather than dragging) to shift something from List 3 to Position 3 on List 1. It shifted to Position 2 instead.

</comment><comment><USER87> Mostly a nitpick, but it'd be nice if the home page had a little <noscript> text for those of us who browse safely and are wondering what it is at a glance or why we should care enough (besides the Spolsky reference) to enable scripting.

Anyway, it's pretty slick with the UI. I'm going to check it out for tasking myself, and if I like it see how it works for a school project with others.

</comment><comment><USER88> What kind of offline support do you foresee? I haven't tried using the iOS app yet...but I'm thinking of the use case where I've cached the current state of the board and want to check off/add things to the board while I'm on the subway, and have it sync automatically when I get back on. Possible, or are there too many moving parts for that to be implemented easily?

</comment><comment><USER89> I couldn't log in with my Google Account (approval with G worked fine though).

Anyway, I created a regular account and my initial impression is very positive. I feel a little disoriented and the "See all boards" could be a lot better (make the boards and their relationships easier to figure out visually). Will use this for a while to see if it will grow on me.

</comment><comment><USER90> Amazing! I'm starting to use it today, most todo/list/project apps suck, this looks really good -- so far =:)

The only thing I don't like is that there is instantly a member added to the first board "Trello" - which makes me wonder if somebody is looking at everything I post on the board -- and makes it seem less private/thrust worthy.

</comment><comment><USER91> I was pretty skeptical after my hate-hate affair with FogBugz but Trello's design, marketing and OOBE are far and away the best in the category. I need to use it more but it just doesn't have whatever Pivotal has that scares away non-devs at first glance. Joel, this is definitely my favorite Fog Creek product yet.

<comment><USER91> Some very interesting interaction design work too. Can I ask who did it?

</comment></comment><comment><USER92> The only thing I don't like about this is that my company won't own the data if we use it. By own the data, I mean, be responsible for it entirely, without any outside entity having anything to do with it, whatsoever.

Other than that, looks awesome. I hope there is a standalone installable version of this somehow, some day ..

</comment><comment><USER93> Nearly freaked out when I saw this as it's very similar to something I'm working on but, on closer inspection it's just a surface design similarity.

Glad to see positive reaction anyway, sometimes seeing a product that's like to the one your working come out isn't a bad thing, it just tells you your on the right track

</comment><comment><USER94> "hide until this date" (preferably parsing description for a date, not a separate entry step) would be nice.

</comment><comment><USER95> Thought it might be fun to have an open board for this thread.. [https://trello.com/board/hacker-news- board/4e70123412dcf45f5...](https://trello.com/board/hacker-news- board/4e70123412dcf45f5f05cb80) I hope this works for sharing.

<comment><USER60> Its a bit tricky because while your board is public, we can all see it but not edit anything.

<comment><USER95> Oh.. I didn't realize that was the case. Thanks for letting me know!

</comment></comment></comment><comment><USER96> Getting an internal server error when trying to signup (after filling out the signup form and clicking the "Create New Account" button on the signup) ... <http://cl.ly/020I2N0Q3d143L2f040a>

</comment><comment><USER81> Few things I am really digging from a design perspective -

1) The slight tilt of an item in the process of doing a drag and drop of tasks

2) The modal boxes for adding invites, viewing task details etc.

3) The scrollbar on the right(Activity) pane. (Was digging around in the css, is this done in Javascript?)

Well done!

</comment><comment><USER97> Any plans for adding multiple lists per column (two at 50% height, etc)? That would be the only thing I can do on our current Kanban board that I couldn't do on Trello.

I really like the app though, it's like a distilled, get out of the way version of Jira.

<comment><USER98> That would break the usability. Right now you know that horizontal axis = lists, vertical = items in lists.

The only thing that I don't like is horizontal scrolling.

<comment><USER97> Maybe - I think that the border around the lists is clear enough separation. I agree about the horizontal scrolling, that is why we have multiple queues per column on the whiteboard. If you have lists with only 2-3 items in them at a time (think WIP limit) then the bottom half of the screen is empty.

</comment></comment></comment><comment><USER99> Does it have an API, so I can integrate with other systems? If not, is that planned for?

<comment><USER38> There are definitely plans for an API, but its not there yet.

<comment><USER100> Second the need for an API. I could see so many plugins for this (github being the first)

</comment></comment></comment><comment><USER101> How big was the team who built this? Stunning achievement, you guys should be proud.

<comment><USER101> BTW, I realize now this could be read sarcastically. I didn't meant it that way at all. I know from the blog post it took 9 months, but I'm also curious the composition of the team that built it.

<comment><USER50> There were two full-time devs, two designer-devs (they write code, for example the iPhone app, but also spent lot of time on UI, usability, and design), and two interns for 12 weeks over the summer.

<comment><USER101> thanks!

</comment></comment></comment></comment><comment><USER102> Just signed up - great so far. One request: make the back of the card resizeable to variable width, or have a preference to make it fit-to larger area within window. Wrapped c++ stubs look even uglier than regular c++!

</comment><comment><USER103> Love it! It's basically a todo checklist app with a completely rethought interface...and general enough you could use it for everything from software development to portfolio management to sales pipeline review.

Great stuff.

</comment><comment><USER104> Great! This is exactly what I was looking for a long time for our content generation and feature implementation workflow. Idea board => Doing board => Done board. Thanks, Joel!

<comment><USER104> And now all we need is APIs to do syncing to existing To do solutions, like Toodledo, Remember the Milk, Todoist, etc.

</comment></comment><comment><USER105> When signing up, the verification email does not content a link if viewed in text mode. My email client is configured to show the text portion of the email when it's available.

</comment><comment><USER106> Have used it for a week and absolutely love it. It would be even better if they could add offline access so I didn't have to worry about having internet access all the time.

</comment><comment><USER107> I have a number of small business clients who have been looking for something exactly like this. I'm going to be telling each of them about it the next time I see them.

</comment><comment><USER108> Feature request: reorder boards. I'd like to use this to manage our software project, and I can imagine a ltr task progression, but then boards have to be features.

<comment><USER3> Er, I think we have that, but we may differ on terminology.

A "board" is the whole thing. A "list" is one column. Each list has multiple "cards". Each card has multiple checklists (on the back).

Lists, cards, and checklist items can be reordered by dragging. "Boards" don't have a natural order so you don't reorder them.

</comment></comment><comment><USER109> Hey, cool, a nice looking Kanban board! (The ones I've seen to date have either been pretty ugly, or too many features for what I want. This one looks just right)

</comment><comment><USER110> I've been trying to find software that fits how I use index cards as a to-do system. This is perfect!

The only thing that would make it perfect-er is an Android app. :-)

</comment><comment><USER111> DoS'd right now. More info about trello on the blog which is still up:

<http://blog.trello.com/launch/>

</comment><comment><USER112> A 7 minute video? That seems long...curious how many people who'd land on this page would watch it all. (I got through 56 seconds of it).

<comment><USER113> If you're really interested in introducing this into a working business, and have spent days researching the options a 7 minute summary (advert) like this is a gift.

</comment></comment><comment><USER114> Does this integrate with fogbugz and/or kiln?

<comment><USER114> We have the hosted versions of both and I've heard more than once "I can't believe they(fogcreek) doesn't do something in project management because most of the current solutions suck."

</comment></comment><comment><USER115> I found this glossary helpful: <https://trello.com/glossary>

</comment><comment><USER116> Great use of node.js for a realtime app. :P We currently use interstateapp, but will give trello a whirl.

</comment><comment><USER117> Its really nice. I am liking it better than PivotalTracker. Except Pivotal had that whole velocity thing.

</comment><comment><USER118> Beautiful product. Who is the designer?

</comment><comment><USER119> Anything that reduces the likelihood that I'll have to work on a project with Mingle is good news to me.

<comment><USER120> Agreed. We currently use Mingle at my job, and Trello looks like it would solve the same problems without the complexity.

</comment></comment><comment><USER121> The page doesn't display completely if javascript or cookies are blocked.

It would be nice if it was mentioned somewhere.

</comment><comment><USER122> Allow a user to create an account and tie it to his Google Account like on StackExchange!

</comment><comment><USER123> is it just me or does the background music make this demo seem like a movie preview? seems like Joel is about to meet his long lost brother, who at first, completely ruins his life, but in the end makes him learn a lot more about himself!

</comment><comment><USER124> This is VERY cool. Makes me wish I were working on something with other people lol

</comment><comment><USER125> No delete card functionality

<comment><USER126> I was looking for a trash can to drag a card into, or an x to click or a delete button or something.

If there is a delete functionality, it's not intuitive or apparent.

</comment></comment><comment><USER127> its Pivotal tracker on a zoomed out view (project level). Really nice!

</comment><comment><USER128> I don't like how this public profile URL can't be turned off.

</comment><comment><USER129> I can use this. Great product. How will they monetize it ?

</comment><comment><USER130> "...It's just a list of lists, really."

Almost like Workflowy on steroids.

</comment><comment><USER131> Did anyone notice "Artist Exploitation Inc" in video?

</comment><comment><USER132> Another vote to be able to import and export data.

</comment><comment><USER133> Would give a tough competition to 37Signals guys.

</comment><comment><USER134> How did you make those scroll bars within the divs?

Thanks

<comment><USER135> I believe it's just an overflow. Yep Inspect element says overflow-y: auto;

</comment></comment><comment><USER136> Too complicated; just use etherpad.

</comment><comment><USER57> Joel,

Is there a place we can make feature requests?

</comment><comment><USER137> Going for Basecamp's jugular :)

</comment><comment><USER138> Ultimate GTD tool ...

<comment><USER18> Agreed. I have a strong suspicion this will cause me to throw my tiddlyspot out the window. Per-board privacy security allows me to have my "Feature 1" board, "feature 2" board, "Bills to pay" board, etc mixing business with pleasure in a way that tiddlyspot doesn't allow.

</comment></comment><comment><USER139> Since everybody seems so enthusiastic about it, I thought I would also leave my not so enthusiastic opinion for the sake of broad feedback.

If i should be honest I didn't like it so much. It felt too cluttered, the interface has way too many visual elements for my brain to process in efficient time. It's also missing more obvious visual indicators such as color or shapes. The list look all the same, they don't even have different icons identifying them, only the the name. That will do it but it's not the ultimate visual indicator.

As a person that barely uses the mouse, I don't find this so practical, it's click after click after click, but I guess that problem affects almost every web application out there.

I might be too focused simple/minimal things, this tries to lay information in a rather complex data structure, which in practice it means a lot of mental exercise before you get the info. I believe many like it, not me, give me a search box and a list of results every day.</comment>


What if all Web ads were blocked? 10 speculative scenarios. - <AUTHOR> http://technologizer.com/2009/08/12/block-web-ads/

<comment><USER2> News sites would probably accept articles from companies if they were paid enough. If we were lucky, they would add a small disclaimer somewhere at the bottom of the article.

And they would probably also sneak in comments about a company inside their articles and comments. Some of them would be from good companies, such as Amazon. Who would blame them? Amazon is such a great company with reasonable prices and delivery. You can also depend on Amazon unlike some of the no-name competitors. Who would want to trust an unknown company, when they can use a trusted company like Amazon.

Where was I... oh, they would certainly integrate paid contents in a sneaky way.

<comment><USER3> Well played. They used to do this all the time in such an obvious way with radio, but the new idea is to causally include the product in movies, books and TV without up selling it. So you blog about your great run yesterday, and happen to mention breaking in your Nike's. Or talk about a date and mention which beer you drank. The idea is to get people to think people like them use product X.

<comment><USER4> I can't find it in myself to get worked up about straight-up product placement. In some ways it's less disconcerting to see a guy drinking a Coke than drinking Unspecified-Beverage-In-A-Vaguely-Red-Can-With-Electrical-Tape. I also have a hard time imagining that even a quite popular show could survive having the characters in the show repeatedly directly shill for a product, long before we even approach the level of ads television or radio used to carry directly. While I've used television terminology, I think this carries across all media.

Any sort of recurring program (TV-like video, blog, newspaper, etc) spend credibility when they do that, unless they are very carefully ensuring that they only talk about products they care about personally, which only works for things that _are_ personal productions. (One clue I use is that a normal person should often get excited about a product that has been out for months or years, rather than one that just came out. Nobody gets everything brand new every day.) Who will read something that is just shilling, over and over again? Perhaps not nobody, but I won't be forced to read it, so I guess I'm still not worried about it.

<comment><USER5> As for surviving direct shilling, I present "The Biggest Loser" as a data point. The most recent season became a barrage of direct product placement experiments.

[http://www.dietsinreview.com/diet_column/04/jillian- michaels...](http://www.dietsinreview.com/diet_column/04/jillian-michaels- dishes-on-biggest-loser-product-placement-and-that-fight/)

[http://www.realityblurred.com/realitytv/archives/the_biggest...](http://www.realityblurred.com/realitytv/archives/the_biggest_loser_5/2008_Mar_19_tim_gunn_product_placement)

More discussion of product placement rankings at the Neilson blog: [http://blog.nielsen.com/nielsenwire/consumer/amazing-race- ap...](http://blog.nielsen.com/nielsenwire/consumer/amazing-race-apprentice- idol-dominate-reality-show-product-placement/)

This isn't even close to new, we're just finally catching up with online media.

</comment></comment></comment></comment><comment><USER6> Ha, that url was blocked by my aggressive filters. :)

"Scenario #6: Professional content dies almost immediately." is ridiculous. There was a web before advertisements and it was (and still is) full of the finest professional content. If your business model is based on ads, then you have no business model. Internet ad monetization is nothing but a gamble.

Let's see how many ad-less "professional" (as in useful and of varying quality) sites I frequently use.

wikipedia

openstreetmap

wolfram alpha

media archives of hacker conferences

lots of open-source related websites

countless other wikis

countless sites by people who love doing what they do, be it hacking, creating, analysing or whatever else

With no more ads I would anticipate more actual content created out of affection (might not be the correct word, no english native speaker here?) and less "this is where people click on most banners, so let's shove more if it down their throats".

<comment><USER7> I agree, mostly; there are a lot of other business models for sites: donations (Wikipedia), complementary to a pay product (Wolfram Alpha), scratching an itch (many wiki sites), subscriptions, etc. However, on this point:

> There was a web before advertisements

Was there? How many people used it? What for? What were the business models? I find it hard to believe that people were putting their credit cards out over the web in great numbers back in 1995, so were these sites just operating under the assumption that they were generating brand-awareness, or something like that?

<comment><USER8> Amazon were selling books online in 1995. Not sure how they were advertising, I'm guessing it was mainly offline, though I imagine possibly signature ads on newsgroups may have been part of it.</comment></comment></comment>


OneLogin data breach, all users in US datacenter affected - <AUTHOR> https://support.onelogin.com/hc/en-us/articles/115002695483 <comment><USER2> This is a huge deal. Depending on how deep the attackers got it could be considered a giant compromise of data at multiple companies. Imagine you had a single password that could let you into any app a company is using internally. Not only that but that single password could be used for any account. That's basically what it means when your identity provider is compromised. Not only that but it is really hard to tell if it was a legitimate login because the assertions are perfectly valid.

If I was a company I'd seriously reconsider outsourcing my identity provider.</comment>


Invalid Argument: A Live Video Show Featuring Web Developers & Designers - <AUTHOR> http://www.readwriteweb.com/archives/invalid_argument.php#.TzmZh9bRtqA.hackernews <comment><USER2> Now why would I want to be in a Google Hangout and take time away from hacking? ;-)

Seriously, maybe next week.

<comment><AUTHOR> There will always be next week!

</comment></comment><comment><USER3> I'd love for my WebDev classes to see these</comment>


A Haven for Fraud and Stolen Cards or How My Wife Was Forced to Quit Revolut - <AUTHOR> https://thehftguy.com/2020/08/12/a-haven-for-fraud-and-stolen-cards-or-how-my-wife-was-forced-to-quit-revolut/ <comment><USER2> Assuming this blog is accurate - Yeah this is bad. I am actually amazed it's that bad. Surely it's not meant to be this bad?

How on earth do they have a UK banking license?

I wasn't aware of this before, but just searching for "revolut FCA" turned up this article from last year about a whistleblower investigation by the FCA in 2016 into seemingly intentional looking-the-other-way for some clients by the CEO[1]

[1]: [https://www.bbc.co.uk/news/technology-47751945](https://www.bbc.co.uk/news/technology-47751945)

</comment><comment><USER3> Strange. The KYC parts of this tale are the mirror opposite to what I've experienced.

Over the past half dozen years or more I've opened probably 4 or more bank accounts with UK 'high street' banks [a couple for personal use, a couple for business or saving]. I've never had to visit a branch with ID. It's all been done online in a few minutes. I've always assumed that this is because the banks have access to things like the electoral register or local government records to check that I am who I say I am and that I live where I say I do.

The story with the new 'challenger banks' has been very different. I couldn't even open an account with the first few I tried [I think Monzo, Bunq and Starling] because they basically wanted me to send them; ID documents, passport, proof of address, selfie video, etc.

Yes! I'm really going to send an "Identity Theft Kit in a Box" to some unregulated hipster company I don't know from Adam.

I eventually opened an account with Revolut because, at the time, they didn't ask for all this crap up front. But the account was severely limited in amounts I could deposit or withdraw, unless I uploaded a copy of ID/Passport and linked it to my high street bank account.

I did eventually gave in and sent Revolut a copy of my passport although I never kept more than a couple of hundred £££s in the account, as their support forums are full of horror stories of people being left stranded on holiday abroad, or facing eviction because Revolut suddenly and without warning froze their accounts.

The final straw came when my passport expired and Revolut started emailing me a couple of times a week to tell me I needed to upload a new passport in order to continue to use the account --you know that old classic whereby you magically stop being who you were on the Monday, because your government issued ID expires on the Tuesday?

At that point I gave up on Revolut [I'd given up on the other challenger banks at the "Identity Theft Kit in a Box" stage] and closed the account.

I'll stick to my boring 'high street' bank from now on. They may not talk to me in emojis and twee cartoons but at least my money's safe, my account's unlikely to suddenly be locked for no reason and I don't have to give them all my personal data, for the privilege of then giving them my money too.

</comment><comment><USER4> It's quite concerning you can open a Revolute account without ID. When I opened a Monzo account it required a pic of my driving license (despite having already recommendation from existing clients and passing the E-Check process with Address\Name\DoB etc).

<comment><USER2> Monzo needed me to send a video of me speaking a phrase of their choosing along with a photo of my ID.

<comment><USER4> I had to do that 6months later when I started using the card abroad. I thought it was odd but it worked rapidly.</comment></comment></comment>


Private Home Webcams accessible to anyone with a Browser - <AUTHOR> http://www.bbc.co.uk/news/mobile/technology-16919664

<comment><USER2> This kind of thing has been open to Google "hacks" for a while now. It's also pretty simple to prevent. :/</comment>


Looking for a Cofounder to build amazing online education product - <AUTHOR>

Hi,
We are looking for a tech cofounder who have an interest in online education.
We are looking for someone who is a coder by heart and have knowledge and expertise with java, html, css, ruby, python, etc.
If this space sounds interesting to you, please definitely reach out. <comment><USER2> Yeah, me too. Have been for many years. And I lived/worked in India building education products. Feel free to contact me as well: me (at) lewhollerbach.com.

</comment><comment><USER3> I'm already in online education. Feel free to contact me firstname.lastname@example.com</comment>


Ask HN: Ruby, Python, or JavaScript for teenager? - <AUTHOR> If you were going to recommend a language to a teenager about to turn 18, that wants to try to learn something on their own, what would it be and why? <comment><USER2> Python, because it's the rare combination of "wildly popular" and "keeps you out of trouble". Ruby has always had a one-framework-town kind of feel to it, with Rails being the one thing people automatically associate with the language. Javascript has the popularity, on the other hand, but it's a minefield in so many ways. The browser is not fun to work with for anything serious, and code written in node bitrots very easily.

So, it's Python. Python has footholds in a variety of places. It's not the most expressive in some respects, but the built in types are more than sufficient to power any student code.

A possible alternate is Go. Go doubles down on keeping you out of trouble by pressing so much code into a uniform style. This may excite some students and frustrate others depending on which threads of thought they're trying to follow.

<comment><USER3> Sounds good, but then someone asks: Python 2 or Python 3? And then you realize python has it's own problems...

Ruby and Python are so similar though just go with one.

Also, a plug for Hanami, because people are still supporting non rails frameworks despite Rails dominance.

[http://hanamirb.org/](http://hanamirb.org/)

<comment><USER4> > but then someone asks: Python 2 or Python 3?

And then you say: It is 2017. Python 3.

<comment><USER3> Sure, but a lot of useful machine learning libs are still dependent on 2

<comment><USER4> > a lot of useful machine learning libs are still dependent on 2

If they are a beginner, they would probably start with scikit-learn, which works on Py3.

As does TensorFlow. As does Theano. Etc.

</comment></comment></comment></comment></comment><comment><USER5> I have 3 languages that I would and do recommend for any new programmer:

\- Python, because it looks like pseudocode and it's hard to fuck up as a beginner. Plus, if you're trying to do something real/effectful (rather than write implementations of algorithms) imperative code matches your intuition.

\- Haskell, because it looks like maths and it's hard to fuck up as a beginner. It's really easy to convert any maths stuff that they know verbatim into Haskell and have it Just Work without accidentally having to worry about, for example, how many times a piece of code is run.

\- C, ASM or LLVM IR (leaning towards the first because it has great tutorials), because it matches how a computer really works. Ok, yeah I know, it doesn't, but it's closer than anything else that you'd actually want to use. C and manual memory management has gotten a bad rap recently, mostly because of all the security vulnerabilities it causes. Sure, you don't want to have to think about memory safety as an application developer but when you're learning it's OK to accidentally read or write uninitialized memory or cause a segfault as long as you've got good debugging tools to turn it into a useful learning experience.

<comment><USER6> Haskell has a steep learning curve. This is not a bad thing: it means that you climb so much higher in the early days of learning if you are successful. You learn more.

But! It also means that it is harder to climb that hill and you might just slide down. You need good support.

</comment></comment><comment> just-for-fun I would recommend Python because I think it is best option to learn fundamental programming concepts like conditionals, loops, functions, recursion, data types, basic algorithms like sorting and searching. It has beautiful semantics which is more consistent than in Ruby or JS.

After learning fundamental concepts he can easily start learning more complex languages and concepts with practical applications. For example he can learn Java and Android programming or alternatively Web programming with Python/Django or Python/Flask.

</comment><comment><USER7> Depends on what you want to do. Each language has an advantage in its own domain.

If you want to build for the web then I would recommend learning Javascript. You really can't avoid Javascript on the web so it is a good thing to learn it well. You can even learn Node in order to make it easier to set up a backend for your web app. The quickest way to get started with the web these days is to learn Javascript and use it with a Node server on the backend. There is a lot of noise in the Javascript community with tools such as React, Angular, Webpack, Typescripts, etc. that are very good for advanced production code. For a beginner, I recommend that you just stick with Jquery until you have to write a large codebase (>50,000 unique lines of code).

Python is just a pleasure to work with. I personally use Python to write code that solves math problems and to build small personal projects. Some people say that there is a problem with Python version 2 to 3 transition. As a new programmer this should not be a problem for you. Just start with Python 3. If there is a package that you want to use, it will probably be ported over soon. If you start with Python 2 then you will need to update your codebase for the transition which is neither fun nor worth your time as a beginner.

Ruby is a great scripting language. I think that many of the things that you can do with Python you can do just as well with Ruby. If you are already good at Ruby or know some people who can help you then you should go with Ruby. If you are new to both Ruby and Python, I would recommend learning Python since there are way more applications for Python (i.e., data science and machine learning).

<comment><USER8> > You really can't avoid Javascript on the web

WebAssembly is coming. So unless they need to code for the web right away, pick the best language for learning, and/or the most productive language, because getting relatively fast results is how you keep young people (unless they're natural programming nerds) interested.

</comment></comment><comment><USER9> Not Javascript since he's going to end up hitting a lot of confusion if he's a curious cat. Ruby or Python.

</comment><comment><USER10> Is there any reason you're only asking about those three languages? I'd say cater to the teenager's interests.

Do they like PC games? Maybe look into C# scripting for Unity. Lua is used for scripting/modding in tons of games. Minecraft I believe is one of the big ones.

Do they like mobile apps? Java, Swift, Xamarin, NativeScript all come to mind.

JavaScript, Python, and Ruby are all wonderful, but I'm just wondering if there's a reason to limit it to those three. I'd say whatever technologies fall in line with the kids interests are best.

<comment><AUTHOR> I picked those 3 because they have quite a bit of a community around each. If you are going to self learn, I thought it would be important to have a good amount of learning material both online and in book form to learn from.

<comment><USER11> The communities around Ruby, Python and Javascript are probably more oriented toward professionals than is ideal for a new programmer. While there is good content for beginners, there is also a mountain of mediocre and obsolescent content and another mountain of content that is only partially related, e.g. Rails, TensorFlow, React respectively.

<comment><AUTHOR> How do handle sorting through that mountain of mediocre and obsolescent content?

I think that is going to be a big problem for a beginner

</comment></comment></comment></comment><comment><USER12> Everyone should start with the perl camel book, [http://shop.oreilly.com/product/9780596000271.do](http://shop.oreilly.com/product/9780596000271.do)

<comment><USER13> I hope you're joking.

<comment><USER14> Actually those Perl books are cleverly written and fun to read (like much of the official documentation) as opposed to the dry literature of many other programming languages. You may like Perl or not but that is a fact.

</comment></comment></comment><comment><USER15> I would say he or she should pick up whatever the people close to them use, because that's who they're going to turn to for help first. Yeah, there's a lot of online resources for just about every language and platform out there, so you've got plenty of people in the world who have blogged about X or asked questions about Y on stackoverflow, but ultimately its hard to beat sitting there with someone who walks you through the rough parts like stack traces that are absolutely shit and don't point to the root of the problem in that one out-of-the-way class method, or can point you in a more productive direction when you decide to rewrite a framework you didn't know existed.

Of course, some people learn things better the hard way, but that's what I wish I'd had...

</comment><comment><USER16> I'd argue your age is irrelevant, your age is only a limiting factor if you choose for it to be.

</comment><comment><USER17> Ruby, specifically Ruby on Rails. There are alot of plugins and resources to quickly setup a website. Ruby does have a learning curve, but activerecord, devise, carrierwave, and Rails' industry support really help you use alot of different technologies quickly.

<comment><USER18> As a person who loves Ruby, I would 100% avoid rails at every juncture.

If you want to write business software or "get things done", rails can help you to do things in the rails way.

However, I dont think its good to have a very VERY large set of conventions; you spend most of your time learning those and dont really spend your time solving problems in a way that teaches you about how to think about computing.

</comment></comment><comment><USER11> Maybe Processing because it is about making things rather than writing programs _and_ it's community is not caught up in computer science; instead it is built around creativity.

But in general, I would not focus on which language is better but which language can be used to improve something that they already do. For a writer, Emacs Lisp might be a good choice. For a photographer, Lua and Darktable might be a good choice. For a graphic artist, Python and Gimp or Inkscape. It's not programming language that matters so much as programming practice.

There are also languages like Snap that are beginner friendly.

BTW, if it's on their own, then it might make sense if the 18 year old chooses. It's ok if they change their mind.

Good luck.

<comment><USER19> >> it's community is not caught up in computer science We're not talking about Haskell/Scheme/Lisp/ML/etc, right?

If memory serves me right, I started learning Python in 2003 (still in high school at that time). My impression was Python is easy to understand, pretty much like good old BASIC.

<comment><USER11> _Processing is a flexible software sketchbook and a language for learning how to code within the context of the visual arts. Since 2001, Processing has promoted software literacy within the visual arts and visual literacy within technology. There are tens of thousands of students, artists, designers, researchers, and hobbyists who use Processing for learning and prototyping._ [https://processing.org/](https://processing.org/)

          versus the landing page for Python

_Python is a programming language that lets you work quickly and integrate systems more effectively._ [https://www.python.org/](https://www.python.org/)

</comment></comment></comment><comment><USER20> Each of those languages has its downside:

* Ruby and its clones are declining as their signature frameworks (Rails, Grails, etc) are replaced by newer ones like Node, Go Http, etc

* Python has the version 2 or 3 problem for now

* Javascript is too complicated

I think in 20 years time when the dynamic language fad has well passed, like the 4GL fad before it, there'll only be 2 dynamic languages left in the market, just as the 4GL's dwindled to only Visual Basic and perhaps Delphi.

They'll be Python 3 and Javascript, so choose one of those.

</comment><comment><USER21> I will recommend learning any two of those three. They are all useful, commonly used, and it's super helpful to understand how to do things in a couple different languages. Basically, it'll be hard to feel like you really understand programming until you start thinking about the strengths and weaknesses of any given language.

</comment><comment><USER22> Is this their first time programming? If yes, the approach to learning computer science is more important than the particular language used.

There's something to be said for David Malan's approach in Harvard's CS50 [0]. He and his team work very hard to make computer science exciting and get the students to have some results quickly. The production values are incredibly high. He takes the class through C and Python.

Coming from a very different approach, you have Matthias Felleisen at NorthEastern University and his How to Design Programs (HtDP) book [1]. Matthias has written extensively on the decisions behind HtDP [2][3]. HtDP uses teaching languages built into DrRacket (which was originally based on Scheme) to gradually introduce new concepts to students.

HtDP is based on the classic Structure and Interpretation of Computer Programs (SICP) from MIT [4], but it addresses some criticisms of SICP as an introductory text. Namely that SICP leans too heavily on domain knowledge outside of computer science.

The course webpage [5] for Fundamentals I from NorthEastern is not very useful for self-study. Instead check out the EdX course "How to Code: Simple Data and Complex Data" [6] by Gregor Kiczales at University of British Columbia.

Unfortunately the course has been branded as "how to code" for marketing reasons, but overlook that because it is a very solid offering that is directly based on HtDP. In fact, Gregor's page outlining and summarizing the HtDP design recipes for How to Design Functions, How to Design Data, and How to Design Worlds, is significantly clearer and easier to comprehend than the original explanation from the book.

The only limitation with the EdX _How to Code_ course is that for some reason they are only "open" for enrollment once pear year. Fortunately the first course is currently open at the moment. Obviously don't bother with the verified certificate/MicroMasters stuff, the content is the only important thing.

Also of note if you're still looking for Python based, is the newish Berkeley CS61A course taught by John DeNero [7]. It is the most all-in-one option for self-learners as the book, the course assignments, and the videos, are all freely available online, and well organized. Similar to HtDP, DeNero's CS61A is also based on Structure and Interpretation of Computer Programs. I have not yet gone through this course so I can't speak to the content first-hand. Of historical note, the course was taught by Brian Harvey using SICP and Scheme up until he retired a few years ago. Brian wrote his thoughts on the change and there was a discussion here on HN [8].

DeNero has written his own book called _Composing Programs_ [9]. Additionally the couse uses Phillip Guo's pythontutor.com for visualizing assignments.

All in all I would say if you are good at self-teaching and don't mind the lack of videos or course materials, check out SiCP. Otherwise, if high production values are appealing then check out CS50. And if you want an all- in-one package that has some of the same solid foundation as SiCP, then go for Brian Harvey's CS61A.

Hope this is useful to someone.

[0] _CS50 at Harvard:_ [https://cs50.harvard.edu](https://cs50.harvard.edu)

[1] _How to Design Programs book:_ [http://www.ccs.neu.edu/home/matthias/HtDP2e/](http://www.ccs.neu.edu/home/matthias/HtDP2e/)

[2] _Essay by Matthias on The Philosophy of HtDP:_ [http://www.ccs.neu.edu/home/matthias/OnHtDP/turing_is_useles...](http://www.ccs.neu.edu/home/matthias/OnHtDP/turing_is_useless.html)

[3] _Essay by Matthias on Growing a Programmer:_ [http://www.ccs.neu.edu/home/matthias/Thoughts/Growing_a_Prog...](http://www.ccs.neu.edu/home/matthias/Thoughts/Growing_a_Programmer.html)

[4] _The Structure and Interpretation of the Computer Science Curriculum:_ [http://www.ccs.neu.edu/racket/pubs/jfp2004-fffk.pdf](http://www.ccs.neu.edu/racket/pubs/jfp2004-fffk.pdf)

[5] _Fundamentals I at NorthEastern:_ [https://course.ccs.neu.edu/cs2500/](https://course.ccs.neu.edu/cs2500/)

[6] _EdX course based on How to Design Programs:_ [https://www.edx.org/micromasters/software- development](https://www.edx.org/micromasters/software-development)

[7] _John DeNero 's CS61A at Berkeley in Python:_ [http://www- inst.eecs.berkeley.edu/~cs61a/fa16/](http://www- inst.eecs.berkeley.edu/~cs61a/fa16/)

[8] _Brian Harvey: Why SICP matters_ [https://news.ycombinator.com/item?id=4784827](https://news.ycombinator.com/item?id=4784827)

[9] _John DeNero 's Composing Programs Book:_ [http://composingprograms.com](http://composingprograms.com)

</comment><comment><USER23> Whatever his friends, you, or other go-to mentor use.

</comment><comment><USER24> Javascript because its used for websites.

<comment><AUTHOR> I can agree this is one good reason for Javascript. I am just worried about there being too many mine fields in the language for a beginner.

<comment><USER25> I think that Javascript is great for it's implementations in NodeJS, but yeah, I see two sides to the argument:

The syntax, semicolons, etc are minefields.

or

The syntax, semicolons, etc can teach good habit and save a lot of headaches in the future (missed a semicolon here, missed a semicolon there.. etc)

</comment></comment></comment><comment><USER26> Rust because it's fast and safe

</comment><comment><USER27> I love both Ruby and Python, but would actually recommend Go.

Go is easy to get started with, has very readable code, fewer keywords to remember and internalize, and lets you fire up a webserver in a few lines of code on all platforms without having to install any extras.

It's also extremely performant, which isn't really important, just attractive.

</comment><comment><USER28> Go with Python. It is easier to understand and some really good tutorials out there.

<comment><USER11> Which Python?

<comment><USER4> > Which Python?

You mean Python 2 or Python 3? If you are a beginner and just starting - Python 3, without a doubt.

(Well, even if you aren't a beginner you should use (or switch to) Python 3)

<comment><USER11> That "Which Python?" is an important question and that the existence of two versions of Python can make finding correct information harder is one of the reasons I am not wild about recommending Python to beginners -- particularly those who are going to be learning on their own.

<comment><USER29> I think your making an overly big deal about this. Never really had an issue with this doing simple python stuff.

<comment><USER11> The functional trio: map, filter, reduce is one place where it matters. In Python2 that was simple Python stuff. In Python3 map, filter, reduce is unPythonic.

</comment></comment></comment></comment></comment></comment><comment><USER30> Python.</comment>


The Daily WTF - "Could You Explain Programming Please" - <AUTHOR> http://forums.thedailywtf.com/forums/thread/139826.aspx <comment><USER2> This is awesome. Sounds like Cargo Cult development almost.</comment>


Ghost ships, crop circles, and soft gold: A GPS mystery in Shanghai - <AUTHOR> https://www.technologyreview.com/s/614689/ghost-ships-crop-circles-and-soft-gold-a-gps-mystery-in-shanghai/ <comment><USER2> If you're curious about the value of sand there is an awesome book named "The World in a Grain" which covers the use, history, and scarcity of sand.

[https://www.penguinrandomhouse.com/books/537681/the-world- in...](https://www.penguinrandomhouse.com/books/537681/the-world-in-a-grain- by-vince-beiser/)

</comment><comment><USER3> The "soft gold" is sand:

> _The reason they're doing this has to do with the cargo the New Glory was > carrying when it ran aground: plain, everyday sand._

> _Chinese builders call it "soft gold." Sand dredged from Yangtze River, > which has the ideal consistency and composition for cement, helped fuel > Shanghai's construction boom in the 1980s and 1990s. By the turn of the > millennium, reckless sand extraction had undermined bridges, trashed > ecosystems, and caused long stretches of the riverbank to collapse. In 2000, > Chinese authorities banned sand mining on the Yangtze completely._

Which is actually a non-renewable resource, and so for certain types, it can be quite valuable:

* [https://www.bbc.com/future/article/20191108-why-the-world-is...](https://www.bbc.com/future/article/20191108-why-the-world-is-running-out-of-sand)

</comment><comment><USER4> Could it simply be a spoofing device that spins? Say it broadcasts spoofed GPS location signals that travel along the circle say on 15* and the rest is jamming. Then different receivers would think they were in different locations as long as they were both not on the straight line to the antenna. It would also simulate the ship receiver believing it was traveling at seven knots when stationary.</comment>


A certain problem with the racial wealth gap - <AUTHOR> https://www.adamsmith.org/blog/a-certain-problem-with-the-racial-wealth-gap <comment><USER2> > Of course, there is a solution to this, sell the social housing to the poor > at whatever discount makes it financially viable for them to buy it.

So ... repeat Thatcher's 1980 Housing Act? How'd that turn out again?

[https://www.bbc.com/news/uk-14380936](https://www.bbc.com/news/uk-14380936)

Hmm. Not that good it seems.</comment>


Compiling to Assembly from Scratch - <AUTHOR> https://keleshev.com/compiling-to-assembly-from-scratch <comment><USER2> I was very much looking forward to this book, pre-purchased it the instant I saw the email it available. I have been enjoying it so far. Best part is that you can follow along with making it in any language, for any input and output language. The author just happens to use Typescript as the language for the compiler, a subset of typescript for the input, and ARM for the output. I'm keeping the same input and output languages for the compiler, but switching to using C++ for actually building the compiler.

</comment><comment><USER3> I'm currently loving the draft of the book. I'm moderately well off with javascript, but I've never used typescript before so I'm working on figuring that out as well. In any case, it's a wonderful book with plenty of diagrams with explanations. Highly recommended! I've spent years dabbling with programming language as well as compiler/debugger/simulator design, so all of this is right up my alley. :)</comment>


The Best Algorithms of the 20th Century [pdf] - <AUTHOR> https://www.siam.org/pdf/news/637.pdf <comment><USER2> I found this remark: [https://www.cs.fsu.edu/~lacher/courses/COT4401/notes/cise_v2...](https://www.cs.fsu.edu/~lacher/courses/COT4401/notes/cise_v2_i1/fortran.pdf)

The Fortran I compiler would expand each operator with a sequence of parentheses. In a simplified form of the algorithm, it would

• replace + and – with ))+(( and ))-((, respectively;

• replace * and / with )*( and )/(, respectively;

• add (( at the beginning of each expression and after each left parenthesis in the original expression; and

• add )) at the end of the expression and before each right parenthesis in the original expression.

This is the first time I hear about this, this technique will work with today compilers vs. most others like precedence climb?

</comment><comment><USER3> An evergreen. See also: [https://news.ycombinator.com/item?id=4468057](https://news.ycombinator.com/item?id=4468057) (with wildly varying comment quality)

<comment><USER4> Thanks for the link, I laughing my ass off the comments...

</comment></comment><comment><USER5> Sort of surprised that the Viterbi Algorithm (1967) doesn't make the list. The simplicity and efficiency of the algorithm for finding a maximum likelihood sequence is astounding.

</comment><comment><USER6> Mildly surprised not to see public key crypto in there. Maybe I'm misunderstanding what makes a best algorithm?

[http://www.cesg.gov.uk/publications/Documents/nonsecret_encr...](http://www.cesg.gov.uk/publications/Documents/nonsecret_encryption.pdf)

He did this in his head, and had to keep it there overnight until he got to work the next morning.

[http://www.zdnet.com/article/gchq-pioneers-on-birth-of- publi...](http://www.zdnet.com/article/gchq-pioneers-on-birth-of-public-key- crypto/)

This article also shows GCHQ's failure of imagination:

> Ralph Benjamin: It was revolutionary in the intellectual schema, and > eventually in its operational impact. We didn't then foresee the full > eventual operational impact. My conclusion was that the process would be so > cumbersome, especially considering the computing ability of the time, it > might have been useful for the occasional short message, but its main use > would be a short message to transmit a key for conventional cryptography.

</comment><comment><USER7> For the full text: [http://www.cs.fsu.edu/~lacher/courses/COT4401/notes/cise_v2_...](http://www.cs.fsu.edu/~lacher/courses/COT4401/notes/cise_v2_i1/index.html)

Ask yourself, which of the 10 have you used today?

<comment><USER8> I've been in meetings all day today, but I think I got at least four explicitly yesterday (quicksort, qr, matrix decomposition, simplex), not to mention all the implicit ones we all use everyday.

</comment></comment><comment><AUTHOR> I submitted this, mostly because I was wondering what more recent algorithms would be added to the list if you were to do a new "best algorithms up until 2015". The most recent algorithm here is from 1987. What new things from the past 30 years might qualify for future best-of lists, assuming they have enough time to gain widespread adoption?

<comment><USER8> Pagerank is the first thing that comes to mind (and there was a big survey article about it in the latest SIAM Review [https://www.siam.org/journals/sirev.php](https://www.siam.org/journals/sirev.php))

<comment><USER9> Hardly 21st century. In its essence it was known to Markov, who died in 1922. For comparison, the idea of TUring machines came in 1936

<comment><USER10> And if you take that idea back, it goes directly to the Jacquard loom, because Knuth Knows we can't possibly have any advances due to modern times. This Debased Era must always be in awe of our Glorious Past. Keeps the kids in line. Keeps people from thinking they know anything.

</comment></comment></comment></comment><comment><USER11> Thats a good list. I'd also include linear predictive coding, the foundation of basically all digital telecommunications.

</comment><comment><USER12> I would've thrown a LISP or Scheme interpreter in there given (a) what McCarthy accomplished by inventing it and (b) how much has been done with it. It was to non-imperative programming what Fortran was to imperative programming.

<comment><USER8> I realize lisp is popular here on hn, but it's absurd to compare it to fortran in terms of influence on the field of numerical computation.

<comment><USER10> Perhaps not Lisp in specific, but the idea of symbolic computation (that is, computers are _more_ than Big Adding Machines) is important and should be on there.

<comment><USER12> That's what I'm getting at with LISP the exemplar and most successful implementation of the concept. That plus functional techniques that followed are huge innovations. Their advantages keep showing up over and over throughout decades in enhancement of them and in other works.</comment></comment></comment></comment>


Iconic Doom3 Game Now in Browsers with WebAssembly - <AUTHOR> https://www.infoq.com/news/2019/07/doom3-web-assembly-port/ <comment><AUTHOR> Here's the link to play Doom3 in the browser.

[http://wasm.continuation-labs.com/d3demo/](http://wasm.continuation- labs.com/d3demo/)</comment>