61 comments

[ 7.0 ms ] story [ 229 ms ] thread
So how long did it take?
About 80 days.
It's exciting to see how much your skills have improved over the course of the half year. I guess this proves a point that added complexity and learning new technology drastically adds to development time for those still learning to program. Also couple this with no extensive amount of development under their belt.

Not to hijack this thread and solely to prove a point, take for example my startup weekend project. Just this weekend (Saturday and Sunday 9AM-9PM) I built CarePrice which utilizes geolocation, a backend api, user management system and authentication, frontend, accompanying social networking, additional pages, and the full gamut. Albeit I did have a little help, I'd attribute 90% of the development work to myself on this one.

http://www.careprice.co

It's this ease of development you can look forward to with more experience under your belt! Keep on hacking and the days just start to shave off.

That is awesome! Now that I've gone through the whole process I'm definitely much fast than I was when I started YumHacker. I spent a lot of time in the beginning just trying to wrap my head around what the heck I was doing, especially with Backbone.
Was that 80 days, full time, 8hr per day? (Congratulations on your efforts, BTW.)
Pretty much. I took a few days off here and there for the holidays but other than that I've been working everyday on the project. Things were kind of slow in the beginning as I was learning a lot of new technology and adjusting to building more complex website but the pace picked up after I got a handle on things.
(comment deleted)
I wanted to really dig in and learn how to build a full scale web app. The site uses Rails as an api on backend and Backbone on the front. There was a little bit of learning curve there for me. It also took some adjusting going from making rapid-fire one day projects to working on something long term.
She's back!

Nice job, Jennifer. The one place I think the 180 previous helped you build massive skill is in UI design. Simple and snappy.

What are you using for geo-coding and mapping? I've found a combination of "geocoder" and "gmaps-for-rails" gems work great.

Thank you! I totally agree with you on the 180 websites project really helping with understanding UI design.

I'm using the Google Maps Javascript API for the maps and RGeo as a wrapper for PostGIS/Postgres.

Cool, nothing wrong with going to the bare metal for Gmaps in simple applications. If you find yourself doing any complex marker or polygon manipulation Gmaps-for-rails is really worth a look.

Keep up the good work, look forward to more from you in the future!

Awesome job! I agree with your opinion on Yelp being imperfect for specific tastes, since it's all aggregate. What's your plan for gaining users, and getting to that critical mass?
Thanks! Learning how to grow a product is part of the next steps for me. Figuring out how to provide value before a user has a ton of friends on the site is important. One thought I've had is making featured lists from notable food critics for example.
Awesome job finishing the site! On a personal note I spend a lot of time eating out, especially at really great restaurants (5 star) all over Miami and Fort Lauderdale, FL. I would love to start adding restaurants, comments, etc. to this app but there is no real "push" for me to do that. Maybe some gamification? Points/rewards/mentions/etc. so that I feel like i'm gaining something by contributing? Just a thought. There may be other people who feel the same way
That is an excellent point and something I've been thinking about as well. One thought I've had is adding some sort of rating system where people who are active on the site get promoted as 'Awesome people who have good taste' (working title). I'm also thinking about ways to make the site more useful on a personal level.
Hi Jennifer, I really like the site, but I'm wondering if there is any way to add more restaurants?

Santa Barbara has a lot of great places, but I'm only seeing a few to choose from :)

There is a way to add restaurants! Under the main search field in the header is a link to Search for a Restaurant. Enter the name of a restaurant and the location and YumHacker will return a list of possible matches. Endorsing a restaurant and it will be added to the database.
ah perfect, I thought I had tried that, but I guess not :) Thanks!
Great stuff, very clean and intuitive UI. Can you make the map scroll down the page as I scroll down?
Thanks! That's a great suggestion. Adding it to my to-do list.
I think the greatest thing you learned on your 180 website trip was how to deliver. You've cultivated a habit of finishing projects and shipping them through the door. No matter how good a developer you are, that in itself is invaluable.
It was actually a little overwhelming when I first started working on YumHacker. I conditioned myself to have a final product at the end of the day. In the first few days of working on YumHacker I had to keep telling myself that I was working on the order of finishing features not websites. :)
This is awesome. Where do you pull data for something like this?
Thanks! For the maps and location data I'm using the Google Maps Javascript API. For the restaurant data, I'm querying the Google Places API from Rails.
It's not finding me by current location, it drops me in the map at what looks like Coords 0,0 in the Pacific Ocean.
Sorry about that! Probably not too many restaurants there to endorse. Thanks for letting me know. I'll look into it.
Same here. Even when I put in my zipcode, it's not finding me and dropping me at 0,0. The name of my location shows up correctly in the search box, but it returns no results and drops me in the ocean. I can scroll around the map and zoom into my city, but it finds no results.
Hm, I think I understand the problem. Back to the code to see if I can track it down. :)
Ok, figured it out! Should be all fixed now.
It got the right place, but it still can't find restaurants near me. I can do the restaurant search and it will find those restaurants near me.

If it helps, I am proxying through California, but I'm actually in Arizona

There probably aren't any restaurants in the database near your location. When you search for a specific restaurant, YumHacker checks it's database as well as querying the Google Places API to look for matches. If you endorse a restaurant, it will get saved in the database and it will appear on the map when you search nearby.

This is a UX problem I'll have to think about going forward.

Same here - Chattanooga, TN plops me right in the ocean.

Tangentially related not, someone needs to put something awesome at that spot. It'd be the real life version of hijacking faecbook.com hits.

Need a one sentence description towards the top. Otherwise I have no idea what the site does.
(comment deleted)
Good point. I probably need to think about a more optimized landing in the coming weeks.
Just pop in the title you're using for the page - Find Restaurants Endorsed by People You Trust. That's the powerful tag that's missing. It feels like Yelp on initial landing, but the "you trust" part gets me hooked.
Thanks for sharing Jennifer. Congrats on this and your past 180 app streak...I was wondering if, after being able to be away from the daily grind, you changed up how you built and structured your app? That is, what were the architectural lessons you learned after 180 days of getting-things-done-(even if not always best practices) that you could apply on your longer term projects?
Thank you! I spent a lot more time thinking about what I was actually doing while making YumHacker. There is definitely a time for just hacking things together to get something that works but sometimes it's worth taking the time to carefully think through the mechanics and do it right. It took time for me to learn Backbone and set up a good system for using it but it saved me a ton of time (and headaches) in the long run.
I can see this being much better than Yelp. How are you doing the recommendations? Something along the lines of PageRank?
So far the site is based on location and what the people you're following have endorsed. In the future, results could also be ordered by things like number of endorsers, photos or comments.
The UI is pretty amazing. But why do the body tags appear empty when I see the view source?
Thanks! The front end uses Backbone.js so most of the content is rendered with Javascript. The backend uses Rails as an api which on page load sends along a barebones html doc for Backbone to latch on to and work its magic. You can check out the source code on GitHub - https://github.com/jendewalt/yumhacker
Thanks Jennifer. Btw, how did you manage to build 180 websites in 180 days. I mean what was your inspiration to conquer the streak?
I wanted to learn to code but I'd never really done any coding before. I came up with the 180 websites idea as a way to start really small and stay motivated. It wasn't always easy but I had a blast and learned a lot.
Taking a quick look at her JS file shows that she's using backbone.js.
Awesome! Your journey is quite inspirational as well.

There's some weirdness remembering locations I search for before I sign up and across the boundary when it asks me for a signup but works great once I've logged in.

Thanks! It has been a really fun ride.

There's still a lot to be done with the sign up/sign in process that I haven't gotten to yet. Saving the last search is at the top of that to do list.

Have you considered open sourcing it to get the development flowing? I for one would love to hop in on this website in particular and get hacking
Awesome. But if this will inspire freshmen to make website per day, we'll be flooded. But I am sort of happy if that will happen.
Like the crisp and quick ux. You might want to adjust the line-height for the business names because two line names seem to have too much spacing vertically; you'll need to adjust the line-height for the entire li first I think because of the way the css is set up.
Thanks! Good call on the line-heights. I hadn't noticed how weird those multiline business names look.
Jennifer, since embarking on these website projects and publicising them, have you had much attention from recruiters for tech companies? (just curious. totally understand if you'd rather keep that info to yourself)

Good job on site 181. Great brand name - but I agree with the person who said a short description at the top would help.