The phone number for the SFMTA Temporary Sign Office is very difficult to find. The SFMTA Temporary Sign web page directs you to 311. 311 does not know the right procedures for the Temporary Sign Office. The email address on the website is also slow to get back to requests. The Temporary Sign department address […]
#usability
10 posts
12 Mar 2019
6 Sept 2015
The Shyp API currently runs on top of the Sails JS framework. It's an extremely popular framework - the project has over 11,000 stars on Github, and it's one of the top 100 most popular projects on the site. However, we've had a very poor experience with it, and with Waterline, the ORM that runs […]
20 Apr 2015
Our test environment takes 6-9 seconds to load before any tests get run. I tire of this during the ~30 times I run the test suite a day,1 so I wanted to make it faster. For better or worse, the API runs on Sails.js. Before running model/controller tests, a bootstrap file in our tests calls […]
1 Dec 2014
"Invalid Username or Password": a useless security measure Login attempts fail because computer users can't remember their email or didn't input the right password. Most websites on the Internet won't tell you which one is actually incorrect. Amazon: Shoprunner: Hacker News: If you tell an attacker the email address is wrong, they'll try a different […]
26 Jul 2014
I'm setting up a new website, which gave me an excuse to try out Nix, the stateless package manager, and Docker, the tool that lets you run all of your apps in light-weight containers on a host. Nix may be a great tool, and help you avoid the possibility of moving parts in your builds, […]
29 Dec 2013
This will be short, but it seems there's some difficulty doing this, so I thought I'd share. The gist is, any time you reference a class or method in your own library, in the Python standard library, or in another third-party extension, you can provide a link directly to that project's documentation. This is pretty […]
17 Feb 2013
Do you write forms on the Internet? Are you planning to send them to your server with Javascript? You should read this. The One-Sentence Summary It's okay to submit forms with Javascript. Just don't break the internet. What Do You Mean, Break the Internet? Your browser is an advanced piece of software that functions in […]
12 Feb 2013
If you've ever tried to teach someone HTML, you know how hard it is to get the syntax right. It's a perfect storm of awfulness. Newbies have to learn all of the syntax, in addition to the names of HTML elements. They don't have the pattern matching skills (yet) to notice when their XML is […]
10 Feb 2013
How should you design the controls for a shower? Let's take a quick look. Affordance A device should make clear by its design how to use it. Take a hammer for example. No one has ever looked at a hammer and wondered which end you are supposed to grab and which part you're supposed to […]
29 Jan 2013
I've worked with Twilio's client libraries pretty much every day for the last year and I wanted to share some of the things we've learned about helper libraries. Should you have helper libraries? You should think about helper libraries as a more accessible interface to your API. Your helper libraries trade the details of your […]