What Are The Two Hard Things In Computer Science?

Naming things and vertically centering things There are only two hard things in Computer Science: cache invalidation and naming things.> — Phil Karlton Without any doubt, the tasks of vertically aligning UI components and creating a good CSS naming scheme are a challenge. In front-end development, there are some unique restrictions which make things even more difficult. In order to develop more reusable and widely supported UI components, the Peapod team has had to devise their own development practices and naming strategies. In this article, I detail the various approaches to controlling vertical alignment and their respective advantages and disadvantages. I then briefly discuss the Peapod development group’s approach to naming elements. ...

August 21, 2017 · 3 min · Xinjiang Shao

TD, Or Not TD, That Is The Question

The Battle with HTML Email Templates HTML Emails Nearly all online users receive tons of newsletters, advertisements, and account notification emails from various sites and online services. Marketers consider email communication one of the most important channels for converting new customers. Not so long ago, making HTML emails was considered to be bad practice. **When you send an HTML email, you have no guarantee that your message will be A) readable at all or B) visually legible to the recipient. With plain text email, you always have that guarantee, no matter what mail client the recipient is using. ...

August 7, 2017 · 3 min · Xinjiang Shao

A Not-so-brief Landing Page History of Peapod

The other day, my friends were surprised when I mentioned that Peapod was founded in 1989. They were doubtful that people even did online shopping 28 years ago, but I assured them that Peapod really was doing grocery delivery and taking orders made via a computer. We were all curious what the site looked like, and after a little searching, I was able to assemble a visual history of the Peapod.com website. Enjoy. ...

July 31, 2017 · 2 min · Xinjiang Shao

Web Accessibility: Designing The User Experience With All Users In Mind

A11Y wiki https://en.wikipedia.org/wiki/Computer_accessibility I joined Peapod about six months ago. One of the major reasons I took the job is that the development team gave me the impression of social responsibility the first time I met them. I’ve never seen any other company like Peapod has a strong requirement for making the application accessible for everyone. In the last major release, Peapod even hired a third party to audit the website to make sure that we’re WCAG Level AA compliant, and the QA team is keeping the same promise by going through the hassles to test for all of the following releases. Why do we care about web accessibility, and how do we do it? ...

July 24, 2017 · 5 min · Xinjiang Shao

Cooking & Coding

Cooking Table from freepix.com I’m always the guy who carries a great passion for food. In the past year, I’ve been experimenting cooking various styles of cuisines at home. Some of them are extremely good, some of them are not. I hate beets, and I’m still not a big fan of it even after trying all different kinds of cooking techniques on beets. But hey, at least I tried. And now I know for sure what doesn’t work for beets. I probably would try more ways to cook beets in future if I find any new techniques. ...

February 12, 2017 · 2 min · Xinjiang Shao