HNHacker News
TopNewBestAskShowJobs

dstillman

330 karma · joined September 10, 2013

submissionscomments
dstillman··on Zotero: Personal Research Assistant
> Software preferences having a privacy section is a thing. Firefox, chromium, etc.

Yes, and Firefox's Privacy & Security section doesn't cover Firefox Sync, the default search engine, search bar suggestions, the new tab pane, the default homepage, or app update checks. Those all make network requests to various services, and they're all controlled in their own sections in the preferences where they make more sense. And you can't turn off loading a website when you enter a URL.

Grouping a few more prefs together in Zotero might make sense, but in a modern, web-connected tool, there's just a lot of functionality where the network connectivity is implicit. The main difference in Zotero is that we document it all and tell you how to turn it off.

dstillman··on Zotero: Personal Research Assistant
> The real question that I'd find interesting is why the translator/style updates must be "instant". For my use, once a day or once every few hours would probably be more than sufficient.

Before Zotero had push-based auto-sync, translator/style updates were indeed once a day, but that meant that, if a high-profile site changed and we pushed out an updated translator, we'd continue to get reports of the site being broken for 24 hours. We could say to update translators manually, but that would only help the people who made it to the forums.

When we added WebSocket support for syncing, we decided to send translator/style update notifications over the same connection. For anyone using auto-sync anyway (many/most users), there's no difference. If you don't use syncing/auto-sync, it's more debatable, but it's a choice between trying not to expose IP addresses that are likely already making at least some other anonymous requests (app updates, retraction checks, OA PDF checks) and decreasing the amount of breakage that users encounter after we've already fixed something.

dstillman··on Zotero: Personal Research Assistant
Early versions were grant funded, but the project has been fully supported by storage subscriptions — including institutional subscriptions — for years. (Lots of invaluable volunteer work as well, but there's a paid dev team.)
dstillman··on Zotero: Personal Research Assistant
I think it's important to look at these things in the context of the features they're enabling and user expectations. The fact that Zotero is a local, configurable, open-source tool is what gives you complete control over it, but it's not just a local database. It's deeply connected to a world of constantly changing websites, metadata sources, and services, and using most of Zotero's features implies relying on those things. If you want to save metadata from a website, Zotero might need to retrieve metadata from Crossref. If you want it to find an open-access PDF, it needs to connect to an online database to check for one. And if you want saving to continue working as sites changes, it needs up-to-date translators. From a normal user's perspective, the alternative is just Zotero not doing the things they downloaded it to do.

> My own understanding of privacy best practices, includes data exposure being opt-in rather than opt-out

Surely you don't expect software to default to not receiving updates automatically? As the linked section says, if you disable translator/style updates and don't use auto-sync, there won't be a persistent connection. But if a high-profile site breaks and we roll out a fix, the longer the delay the more people will just get an error trying to save.

> those privacy preferences being easily seen and changed in one place

We document every single network request that Zotero makes. Expecting them to all be configurable in one place in the software just isn't reasonable. Normal users think of features, not HTTP requests, and auto-sync doesn't have anything to do with translator update checks.

> I'd be fine with "we have limited resources; know privacy is important; are improving; know we have work to do to implement best practices, are working towards it".

OK, but I'm not saying that. I'm saying we consider privacy in all our decisions and believe we've made the right calls (and, for what it's worth, I can't recall a single complaint about our approach to privacy in many years). If you disagree with a specific decision, that's fine — come to the forums and we can discuss. But let's be clear about the features that would break for users as a result.

dstillman··on Zotero: Personal Research Assistant
To clarify, Zotero's storage limit is only for syncing of attached files. You can use Zotero entirely offline if you choose, storing as much as you want, and we also support WebDAV or linked files (which can be in Dropbox, etc.) for syncing files in your personal library.

(Disclosure: Zotero developer)

dstillman··on Zotero: Personal Research Assistant
Mostly historical. Zotero began as a Firefox extension, with separate Firefox extensions for the word processor plugins, and later added a standalone app that used the same codebase. Since Firefox discontinued support for XUL extensions, there's only a standalone app and the lightweight browser extensions now, but we haven't gotten around to merging the various build repos. We know it can be a pain to build, though, so streamlining this is planned.

But it's also just a huge ecosystem with parts that are used and developed independently. E.g., "translators" for save/import/export are used in both Zotero and in the Node-based translation-server (used by Wikipedia and others), and we can give commit access to those separately from the core code.

(Disclosure: Zotero developer)

dstillman··on Zotero: Personal Research Assistant
Ask your colleagues to use the Better BibTeX plugin for Zotero, which includes vastly better support for BibTeX-based workflows.

Zotero's built-in BibTeX export is mostly intended as a generic data transfer format to other similar tools. It could surely be improved, and we'd be happy for patches, but contributions tend to go to Better BibTeX, since that's what people who care about BibTeX are using. (Zotero will export ASCII BibTeX if you choose "Western" instead of "Unicode" for the export charset, though.)

(Disclosure: Zotero developer)

dstillman··on Zotero: Personal Research Assistant
(Disclosure: Zotero developer)

Criticizing Zotero for privacy, of all things, is a bit bizarre. Zotero is an open-source project from a nonprofit organization with no financial interest in people's research data. It's designed as a local tool specifically to give people complete control over their data, and it's developed in the open. Most similar tools are proprietary programs owned by major publishers or analytics companies with voracious appetites for data.

The page you linked to explains the reasons for every single network connection that Zotero makes and how to disable it. Every one enables a specific Zotero feature — push-based auto-sync, fast translator updates as sites change to minimize save failures, open-access PDF retrieval. When we implemented retraction notifications, we even did it using k-anonymity to avoid sending up library data from people who don't use syncing.

We're always happy to discuss design decisions in our forums, but I'd argue pretty strongly that privacy is one of the main reasons one should use Zotero, not the other way around.

dstillman··on Mendeley encrypts users' database after Zotero provides an importer
> The lack of developers and thus slow pace of improvement [...] we are reliant on one or two volunteers to improve the product

I'm not sure why you have that impression. Zotero has amazing, invaluable volunteers, but there's a paid, full-time dev team working on Zotero every day. In the last year, we've added:

- Google Docs integration [1]

- Unpaywall integration [2]

- A new, greatly improved PDF recognition system [3]

- Faster citing in large documents [3]

- A much more powerful saving interface [4]

- Mendeley import...

- ZoteroBib, a free web service for generating bibliographies [5]

- A barcode scanner for iOS [6]

- Regular updates and bug fixes [7]

[1] https://www.zotero.org/blog/google-docs-integration/

[2] https://www.zotero.org/blog/improved-pdf-retrieval-with-unpa...

[3] https://www.zotero.org/blog/zotero-5-0-36/

[4] https://twitter.com/zotero/status/991052142717886464

[5] https://www.zotero.org/blog/introducing-zoterobib/

[6] https://www.zotero.org/blog/scan-books-into-zotero-from-your...

[7] https://www.zotero.org/support/changelog

(Disclosure: Zotero developer)

dstillman··on Ask HN: Who is hiring? (January 2019)
Zotero | iOS Developer | Remote | Full-Time

Zotero is an open-source research tool that helps people collect, organize, cite, and share their research. It's recommended by most universities and used by millions of students, scholars, scientists, and researchers worldwide.

We're building our first iOS app, and we're looking for an experienced iOS developer who can lead that effort, joining a small, remote-only team and a vibrant global open-source community. As a core Zotero developer, you'll play a critical role in coming up with new ways to help people manage their research more effectively.

More info: https://www.zotero.org/jobs

dstillman··on Ask HN: Who is hiring? (December 2018)
Zotero | iOS Developer | Remote | Full-Time

Zotero is an open-source research tool that helps people collect, organize, cite, and share their research. It's recommended by most universities and used by millions of students, scholars, scientists, and researchers worldwide.

We're building our first iOS app, and we're looking for an experienced iOS developer who can lead that effort, joining a small, remote-only team and a vibrant global open-source community. As a core Zotero developer, you'll play a critical role in coming up with new ways to help people manage their research more effectively.

More info: https://www.zotero.org/jobs

dstillman··on Zotero: An open-source tool to help collect, organize, cite, and share research
> metadata extraction/automated adding really doesn't work right with my research workflow

I'm not sure exactly what you mean, but the primary way of adding items to Zotero is with the Zotero Connector browser extension, which lets you save high-quality metadata and PDFs with a single click from a huge variety of sources (certainly including humanities sources, since Zotero was created by historians). No other tool comes close to Zotero's abilities here. Metadata quality does vary by site, though — Google Scholar specifically only provides limited metadata, so you'll often get better results by clicking through to the linked article and saving from there. We have plans for functionality to flesh out incomplete metadata retrieved from subpar sources.

Zotero can also automatically retrieve metadata from PDFs you drag in, which should work for the vast majority of recent PDFs and many older ones with DOIs assigned, though that's not meant to be the primary workflow.

> documentation for things that would be useful like hooking up to academic library proxies is nonexistent

Current proxy documentation is here [1], and that's what's linked from the main documentation page. I've fixed the outdated page you pointed to — thanks.

Note, though, that the proxy functionality is meant to work automatically for the popular academic proxies, so most people don't need to configure anything to use it. (And as far as I know other competing tools don't offer anything like this.)

> no better bibtex for zotero 5

BBT has worked with Zotero 5 since last year.

Disclosure: Zotero developer

[1] https://www.zotero.org/support/connector_preferences#proxies...

dstillman··on Zotero: An open-source tool to help collect, organize, cite, and share research
It doesn't use embedded metadata in the file, which is usually pretty low quality. It looks for various identifiers (DOI, ISBN) in the first few pages that can be used to retrieve high-quality metadata from external services. It also does some analysis to try to identify the title, authors, abstract, etc., and compares those against known metadata for further lookups and/or to supplement the retrieved metadata. (This is a web service [1] because of the database requirements, but we don't log any data about the contents or results of searches, and it's an optional feature.)

For extracting metadata from a formatted bibliography you can use AnyStyle [2], which is a separate service written by a Zotero developer.

[1] https://github.com/zotero/recognizer-server [2] https://anystyle.io

dstillman··on Zotero: An open-source tool to help collect, organize, cite, and share research
In Zotero you just do that in your PDF reader of choice. If you're using syncing, as long as the PDF reader saves annotations back to the original file, Zotero will automatically sync the updated file to other group members.

The one downside of this approach is that multiple people can't modify the same PDF at the same time. The upside is that you can use whatever PDF tools you want and annotations remain accessible in the file even if you stop using Zotero, which goes with our philosophy of leaving people in control of their own data. (Mendeley stores annotations and highlights in its own encrypted database, and you can't even export PDFs with annotations in batch. If you want to get a PDF with your annotations out of Mendeley, you have to do it one file at a time.)

Disclosure: Zotero developer

dstillman··on Zotero: An open-source tool to help collect, organize, cite, and share research
No need to use Show File. You can just open the PDF from Zotero, annotate, and save.
dstillman··on Zotero: An open-source tool to help collect, organize, cite, and share research
It's not a usability decision — it's just one feature that hasn't yet been implemented [1]. Updating metadata is more complicated than creating a new item, because you have to deal with the existing metadata somehow. (Mendeley just overwrites the existing item, often with incorrect data, which we don't consider acceptable.)

Disclosure: Zotero developer

[1] https://github.com/zotero/zotero/issues/1515

dstillman··on AWS Fargate – Run Containers Without Managing Infrastructure
t2 instances work great for many web services with daily load fluctuations if you view them as basically a billing mechanism. AWS originally offered a reserved-instance model where you didn't pay for instances that weren't running, but now that you pay for RI instance-hours regardless of usage, scaling down doesn't save you any money, so you either buy RIs to cover your peak usage (and waste money off-peak) or pay much higher on-demand prices some of the time. With t2's (which were introduced around the same time as the RI change), you can just run the right number of instances to keep your CPU Credit Balance above water (stockpiling credits off-peak) and buy RIs for them all, making them extremely cheap. And you can still auto-scale on the credit balance to avoid throttling in case of unexpected load.
dstillman··on Show HN: A browser extension to remind you who people are in articles you read
Hi folks. This is something I found myself wanting all the time while reading longer news stories, so I finally turned it into an extension.

I made versions for Chrome, Firefox, and Safari, as well as a bookmarklet that works anywhere. (You have to activate the bookmarklet on each page, so it's much more annoying to use, but so is searching the page for a name on an iPhone. The Firefox version is a UI-less WebExtension, so (I'm told) it actually works automatically on every page in Firefox for Android, which is pretty neat. I'd love it if Apple added support for running extensions automatically on iOS, but that seems pretty unlikely due to battery life concerns.)

The code is open source and up on GitHub.

dstillman··on Ask HN: Who is hiring? (March 2017)
Zotero | Backend Developer | Fairfax, VA | REMOTE https://www.zotero.org

Zotero is an open-source project that develops software and web services to help people collect, organize, cite, and share their research. Our software is recommended by most universities and used by millions of students, scholars, scientists, and researchers worldwide.

We're looking for a full-time, remote developer to work on Zotero's server-side architecture — our public API, backend services, AWS infrastructure, etc. You'll be part of a small team producing free and open-source software along with an amazing global community and help make a huge difference in people's ability to manage their research effectively.

More details here: https://www.zotero.org/jobs

dstillman··on Ask HN: Who is hiring? (February 2017)
Zotero | Backend Developer | Fairfax, VA | REMOTE https://www.zotero.org

Zotero is an open-source project that develops software and web services to help people collect, organize, cite, and share their research. Our software is recommended by most universities and used by millions of students, scholars, scientists, and researchers worldwide.

We're looking for a remote, full-time, contract developer to work on Zotero's server-side architecture — our public API, backend services, AWS infrastructure, etc. You’ll be part of a small team producing free and open-source software along with an amazing global community and help make a huge difference in people's ability to manage their research effectively.

More details here: https://www.zotero.org/jobs

dstillman··on Mozilla Firefox Add-On Signing Update
No need to use Developer Edition. The unbranded builds of Release and Beta will have an update mechanism too.

They'll be en-US only, though, so if you want a non-English interface, you're out of luck.

dstillman··on Ask HN: Who is hiring? (October 2015)
Zotero | Remote | Full-Time

Zotero is an open-source project that develops software and web services to help people collect, organize, cite, and share their research. Our software is recommended by universities worldwide and used by students, scholars, researchers, scientists, and many others.

We’re hiring for three positions:

- Full-Stack Developer

- Web Developer

- Product Designer

You’ll be part of a small team producing free and open-source software along with a vibrant global community. We meet periodically in person (conference room in Virginia, falafel joint in Paris, cafe in New York City), but you’ll primarily be working remotely, communicating with Zotero developers and users via chat rooms, forums, mailing lists, and GitHub. We have a highly collaborative but asynchronous workflow, and you’ll be in control of your own schedule. Our hours are flexible and variable: we might be debating a new feature at 1 p.m. or deploying a major upgrade at 1 a.m.

More info here: https://www.zotero.org/jobs

dstillman··on Ask HN: Who is hiring? (September 2015)
Zotero | Remote | Full-Time

Zotero is an open-source project that develops software and web services to help people collect, organize, cite, and share their research. Our software is recommended by universities worldwide and used by students, scholars, researchers, scientists, and many others.

We’re hiring for three positions:

- Full-Stack Developer

- Web Developer

- Product Designer

You’ll be part of a small team producing free and open-source software along with a vibrant global community. We meet periodically in person (conference room in Virginia, falafel joint in Paris, cafe in New York City), but you’ll primarily be working remotely, communicating with Zotero developers and users via chat rooms, forums, mailing lists, and GitHub. We have a highly collaborative but asynchronous workflow, and you’ll be in control of your own schedule. Our hours are flexible and variable: we might be debating a new feature at 1 p.m. or deploying a major upgrade at 1 a.m.

More info here: https://www.zotero.org/jobs

← PreviousPage 2 of 2