Category Archives: Coding

Announcing: Kiddo–tailored selections for baby stuff

kiddo-iphone

I’ve been working on a simple little web app to help new parents make smart product decisions.

Kiddo helps you find stuff that fits your baby. Diapers, toys, feeding supplies and more — all based on their height, weight, and birthday.

I’m really looking forward to getting this into users’ hands and getting to work on improving it based on real user feedback.

Continue reading

Stretch goals on reaching out

Update: Hitlist has a new name and a new home: Ketchup.io; yes, it’s a rough pun on the concept of “catching up.”

I wrote Hit List because there are a lot of people I know I need to reach out to more frequently; some because they are personally meaningful relationships I’d like to maintain, some because they are productive work relationships that can be mutually beneficial.

Like with to-do lists, the items that linger the longest are typically the ones that most urgently need attention, but for whatever reason are inaccessible by barriers we create for ourselves.

I am about to go on a trip to visit family and one of the goals I gave myself before leaving is to clear everyone in red/yellow: the contacts I’ve decided are meaningful, but for which there has been no meaningful contact for >60 days.

Hit List

I just cleared my list: it was easier than I anticipated and felt better than I expected.

Whether or not you use Hit List, go make a list today of the people you have been meaning to write to, or to phone, and start crossing them off. You’ll feel as good as I do today.

Hit List: A simple webapp I built in a day

Yesterday I built Hit List, a simple web app to meet a small, specific need I identified at work.

2013-03-10 08.47.09

Because my company is a very large but flat, unstructured organization, there is a strong emphasis on productive networking (and a strong aversion to superficial networking). On two occasions on Friday I was reminded of colleagues I wish I reached out to more often, and was struck by how long it had been since we last spoke.

As I jotted down their names, I thought about how many other such lists of names sat un-checked in earlier pages of my notebook. Clearly a simple little web app would trump pen and paper. Next to the list of names I jotted down a very simple feature list:

2013-03-10 09.11.41

Basically, I wanted a simple app to keep track of names and interactions. It would show me the people I care about seeing more often, and how long it had been since our last conversation, ranked by length of time (previous). Yesterday I built it.

The most rewarding part of my newfound enthusiasm for learning to code is identifying a real problem, breaking it into its components parts, and learning how to accomplish each, then building them back into a useable whole.

In building this tiny project, I learned the following:

  • I can interact with items generated from objects in a database (in this case names) by storing their relevant attributes in the DOM, and later retrieving them/create variables using .attr()1.
  • You can target nested divs by class for .click() through .delegate()however if you target then delegate off of the $(‘body’) there is a bug that will prevent this from working on the iPhone. Instead, .delegate off of a parent $(‘div’).
  • Related to above; test more frequently on the device you’re building for.
  • Attach objects to users. Very simple, but this is another fundamental building block I needed to learn and use before moving on to more complicated things.
  • Still impressed by Parse; amazed at what you can build with a few weeks’ worth of HTML/CSS/JS self-instruction if you have a well abstracted backend.

If the app sounds even remotely interesting2 head over to Hit List to check it out.

  1. I am positive that if I went to CS school I would have learned a more sophisticated way to do this, but this design pattern came to me during a walk yesterday and will at least let me hack together my next project.
  2. or if it did before the above bullets…

Learn to code by coding

I have had many failed attempts at learning to code1. If you ask anyone what is involved in learning how to code, those who have built anything interesting will typically tell you that you just do it. You learn by doing.

I understand this approach and I don’t. It’s simplicity belies the complexity of the multiple skill-sets and the difficulty of deciding where to start.

In the past few weeks of starting from virtually zero, and building a simple little web-app that I had in my imagination I think I’ve gained some perspective on how to learn by doing. I have a couple small points to add, but the fact remains: you learn to code by coding. Continue reading

  1. Even the phrase “learning to code” is so vague that it hardly feel helpful in describing the endeavor

Count: A simple, little jQuery project

I just put the finishing touches on Count, a simple little webapp that let’s you count things.

2013-02-17 16.07.13

I want to be able to code simple little tools and services that help people do things. I have a long road ahead but learned plenty in making this app.

  • jQuery really is awesome: I was planning on learning straight javascript (and am continuing to do so), but jQuery’s ability to write succinct, functional code is pretty awesome
  • Storing data on the client-side is surprisingly easy: localStorage is about as easy to implement as one could hope. Now when you reload, or re-open .count it will remember where you left off.
  • Hiding the chrome on Safari for iOS: window.scrollTo(0, 1)

No idea what project is next, but it’s nice to have built something tiny that does what it’s supposed to.