Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Quiver – The Programmer's Notebook (itunes.apple.com)
64 points by ylian on Dec 1, 2014 | hide | past | favorite | 48 comments



Quiver is a Mac app that helps programmers take notes. Its unique cell-based design makes it easy to mix text and code in one note.

I built Quiver to scratch my own itch. I have tried numerous code snippet managers over the years, but they all missed one crucial point: it's not just code that you want to store. Usually you want to mix code snippets with comments, images, and links. Nothing out there was able to do that. That's why I built Quiver.

Now Quiver 2.0 is out. This major update comes with cloud syncing, shared notebooks, Markdown preview, presentation mode, and more. With this new version Quiver is no longer just for a single user, but for team collaboration as well. You can use a shared notebook as a shared knowledge base in your company.

You can find more information about Quiver here: http://happenapps.com/#quiver

A free trial version is here: http://happenapps.com/downloads/QuiverFreeTrial.zip


I've been looking for something like this I'll definitely check it out when I get home. One small feature request that I have though is if you could add some simple screen-shoting functionality. I believe it should be simple enough judging for example by this SO question http://stackoverflow.com/questions/12823489/how-to-take-regi... and this example https://developer.apple.com/library/mac/samplecode/SonOfGrab... but I might be wrong. I realize that I could just use whatever screen-shoting app and then drag the image over but sometimes I take a lot of them and all the switching gets really annoying.


You can take a screenshot with the standard OS X shortcuts (Command-Shift-3, Command-Shift-4, etc.) then paste into a text cell. Quiver lets you save images inside text cells, including web images (which will be saved locally so they work offline).

If you like a quick workflow, use Command-Control-Shift-3 to take a screenshot and save it to clipboard, then paste in Quiver.


I've been looking for something like this for quite some time. Thank you!


You are welcome. Let me know if you have suggestions.


For anyone interested in an alternative, I'm working on Brainstorm, an open-source note taking application that runs in the browser.

Its fuelled by markdown with syntax highlighting support. Since Brainstorm likes looking at things, you can also embed images (and .webm video using html <video>)

The demo currently has no restrictions on who can and cannot edit notes. This won't be a problem in the future.

Demo can be found here: http://brainstorm-notes.meteor.com

Github: https://github.com/Azeirah/brainstorm


How is this different from Evernote? I use Evernote for this exact purpose using their notebooks and tags. The UI looks to be based on it as well.


You can't do syntax highlighting in Evernote. If you do syntax highlighting with another tool, then copy into Evernote, you won't be able to edit it again. That's the main reason I couldn't use Evernote for programming notes.

Quiver's code cells use the ACE editor (http://ace.c9.io/), which is a real code editor with syntax highlighting support for over 110 languages, 20+ themes, auto indent and outdent, etc.


Also, Evernote doesn't have Markdown support. Quiver has Markdown cells and live Markdown preview.


http://marxi.co/ seems pretty useful.


Seems quite useful to be used together with Evernote. Thanks.


Though it's a different beast, the (Smallest) Federated Wiki shares some similarities with this. It uses a JSON format and allows different paragraphs to use different plugins, including a code plugin:

http://fed.wiki.org/view/choose-plugins/view/about-code-plug...

It is also cool in that it's a federated wiki. If you're not familiar with the idea, consider listening to this recent JavaScript Jabber podcast with Ward Cunningham:

http://devchat.tv/js-jabber/135-jsj-smallest-federated-wiki-...

It's a great concept and you can set up a federated wiki on your own machine with "npm install wiki".

Edit: Sorry for failing to only provide an alternative without commenting on Quiver!

Though I am clearly excited about fed wiki, I also intend to buy Quiver because it meets specific needs that I have with easy image inclusion, export to HTML and I may even have a use for the presentation mode.

Nice to see ACE used this way... I worked on ACE some years back and currently work on a web tech-based desktop editor (Brackets).

Congrats on a great project!


The federated wiki idea is interesting. It's the first time I hear about it. The json file format does look very similar to what Quiver has. It is cool to be able to resolve note conflicts with a drag-n-drop UI.

And thanks for ACE! Without it I wouldn't be able to create Quiver. It's an awesome code editor!


You're welcome for my little bit of ACE. There were others with a much bigger hand in it than me (Fabian Jakobs and Julian Viereck come to mind instantly). It was a fun project (and probably still is!)


A great looking app.

I use the babel package built into emacs' org-mode. It's not for everyone though.

It's worth investing in a tool like this. I find the act of keeping a journal to be invaluable to developing my skills as a programmer. I find it serves two primary purposes. It first provides me a historical record of how my thinking has been changed and influenced. And it helps me to recall difficult subject matter in deep, complex domains. I tend to have limited brain capacity so it's nice to have a "database" of my thoughts to lean on.


Emacs org-mode with babel is definitely the bee's knees.

I can intersperse org-mode markup (much richer than markdown) with syntax-highlighted and executable code snippets. I can export all of this to my wordpress blog or to great-looking LaTeX documents, or even to presentations using org-reveal.

Here's an example of an exported org-mode file with math and graphics: http://vxlabs.com/2014/06/16/level-sets-the-practical-10-min...

Here's a simpler example with just Python snippets embedded: http://vxlabs.com/2014/11/12/getting-django-rest-framework-t...


org is fantastic, and good note taking is how you manage work in large source bases.

It has the added benefit that you can put your notes into git.


I'm sure Quiver is slick software but so often I have seen flashy tools suck up more time and effort in using them than other, simpler solutions.

If you want to make quick notes, there is absolutely no better tool than a notebook and pencil.

It's time tested and been proven to work for the past 2,000 years. It offers the minimum possible barrier between your thoughts and the page. It allows completely free expression with no limits on what characters you can type or where you draw your lines. You can erase and rewrite arbitrary areas as many times as you want using an eraser. The battery will never run out, it's very cheap and there's no screen to smash if you drop it.

FYI this isn't the opinion of some ancient luddite who still thinks we should be programming with punch cards. I'm 25 and have been hacking and playing with computer hardware and software since I was 12.

And I still think a moleskin pad and mechanical pencil is hands down the absolute best UI for crystallizing thoughts. If you are using anything flashier you are wasting your time on the tool rather than the substance of what you are thinking.


It's code notebooks, not an idea chart. It's evernote for programmers which is something a lot of people need since all the evernote-esque tools suck at handling code.

> If you are using anything flashier you are wasting your time on the tool rather than the substance of what you are thinking.

I brainstorm at a keyboard fwiw. Different strokes.


I agree with this to some extent. I'm a sucker for a new moleskin notebook.

But, it is such a freaking pain to copy code down into a paper notebook. I've been doing it for a few weeks now and I feel I spend more time copying down the code than actually programming somedays.

Also, my handwriting is horrible.


Well I don't tend to actually write much code out by hand. Usually I use a notebook for sketching out ideas, thoughts or todo lists.

For copying out code I use the same text editor that I program in.


I agree with you. I made my own open-source note-taking software (built it with love <3), and even though I use it a lot, it does not, will not and can not replace my notebook.


Looks neat. I'll have to try it out first before thinking about buying it.

I've been using Gollum, a project from github. It's basically a wiki using ruby brick and git to serve the md pages. I think the hassle is having to start up gollum to use the wiki and having it run.

And I keep different subjects in different repos so switching between each repo and relaunching gollum is a hassle. The code highlight isn't so great with other languages such as Erlang iirc.

Does this just have one hierarchical page in each notebook? Say the python book, it seems like there's say a collection of pages, each of those pages cannot have nested pages?


Yes Quiver has a very simple hierarchy: notebooks and notes. But you can use tags and linked notes for more flexible note organization. Also, when there are lots of notes, the only practical way to find something quickly is a full-text search, which Quiver supports nicely.


Whoa.. is the full-text search per notebook or every notebook? Can I choose to search per notebook and every notebooks?

That sounds awesome!


A way to convert IPython Notebooks to Quiver notes would certainly be useful (as would the other way around). Searching ipython notebooks for code is a nightmare.

edit: good work btw, I'm not completely sold on this solution but I do think there's a problem here. I'm pretty invested in evernote but think this has potential.


That is a good idea. IPython Notebook was another inspiration for Quiver. Since Quiver uses an simple JSON format for data files, it's easy to write a script to convert IPython notebooks to Quiver notebooks. I don't yet have importer scripts, but I have written some exporter scripts here, and you get the idea. https://github.com/HappenApps/Quiver/wiki/Export-Scripts


I made a quick and dirty script to convert markdown to quiver already but unfortunately have a ton on my plate right now.

https://gist.github.com/anabranch/09c421e3ff13e1245316

This basically just splits it on ```code``` blocks and only supports python at the moment, but could be a resource for others.


Wow, that's fast. Appreciate that. Added to Quiver wiki.


It would be cool if it executed the code like IPython as well.


That would be cool, but would make the app more complicated. Think about all the other languages. You would have to include tons of runtimes. It's better to leave that to other apps/frameworks/tools.

I like to keep Quiver simple and lightweight. Quiver app is only 8MB unzipped, while Evernote is over 160MB unzipped.


Any thoughts on making this cross-platform (Win7, linux)? I currently use tiddlywiki to keep a journal of all my notes but it's not as seamless to use. At work, I use Windows7 but at home, I use Mac OSX. I have it synced via Dropbox which allows me to jot down notes almost anytime I'm using a computer.


I've been using the demo for the past hour and I'm really enjoying writing short code snippets with "text cell" comments. The only feature I would request is some way of inserting tables, perhaps a "table cell" option. Great app though, loving the demo so far.


It's possible. Thanks for the suggestion.


Hello~

How can I insert a table? I've googled but I couldn't find the way. It is supported only purchased version? I want to check this feature before I buy the quiver. :)


I would love to have syntax highlighting in nvALT (~notational velocity), but wouldn't switch away from it for that feature alone. Having tried out quiver, it's not nearly as fast to use.


nvAlt is great. It's one of the inspirations for Quiver.


Nice. Any chance of a windows version?


Unfortunately I am not a Windows programmer. But Quiver uses a simple JSON format for notebooks and notes, as documented here: https://github.com/HappenApps/Quiver/wiki/Quiver-Data-Format

So anyone with the right skills can take Quiver's design and format, and make a similar app for Windows. I wouldn't mind at all.


This looks like it'd be really useful for quickly making teaching materials.


Will it be possible to add a feature like the web clipper?


Beautifully made, and very useful. Bought it. Thanks!


Thanks for support. Let me know if you find issues or have suggestions.


Is there any encryption for notebooks/notes?


Quiver 2 saves all data in plain JSON files. So if you have turned on FileVault on Mac, the data files will be encrypted. Otherwise no.


Weird name


A quiver keeps arrows safe for a great archer. The Quiver app keeps notes organized for a great programmer.


Great name and a great icon, I would say!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: