Archive

Archive for the ‘news’ Category

What’s taking you so long? An Mealstrom Update

December 2nd, 2009 alex No comments

Executive summary of this long post: I took a long, recharging break; the site’s still alive; I’m rebuilding it bit by bit, slowly but thoroughly and surely; no due date, but you’ll hear from me again.  Oh, and the new version’s going to be pretty awesome.

Followers of this blog may have noticed that updates have been few and far between.  Until last week, your author had not posted an update for three months, and while previous posts had mentioned ongoing work, nothing has changed.  Cobwebs gathered on the site; issues went unfixed; the account section bore witness to Facebook dialogs long since relegated to Palo Alto’s dumpsters.  Even Mealstrom’s one-year anniversary in October failed to elicit the faintest murmur of life.  Loyal readers, you would be quite justified in wondering “Is Mealstrom dead?”

The answer (happily) is a resounding “No!”  Not dead, just hibernating, sleeping a long slumber from which the site is slowly starting to wake.  After my wedding (itself a distraction without peer), I took a much-needed break from the site, reading books, recharging, and getting some valuable distance from and perspective on this meal-blogging service.  Around the same time, I started a very cool phase of a project at work, building a new platform from scratch and learning how much my skills and knowledge and ideas have changed since I started the current version of Mealstrom.  When I reopened the Mealstrom codebase, I quickly realized that rather than fixes to the current version (built as a learning exercise), Mealstrom deserved a substantial rewrite.

My goal

Mockups, or, my goal


Since November 3rd, when I branched the site, I’ve been working on a completely new version.  I’ve set myself a series of goals for the rebuild:

  • Thought-out designs: before starting each page, I’m creating a Photoshop mockup of the layout.  Design first forces me to envision and refine the page before I get distracted actually by building it.  Though I’m not a graphic designer (as the mockup example here shows), I am fortunate to borrow the time of a talented UI engineer to make sure these designs will be straigthforward and easy to use.
  • Dynamic content: each page should be as responsive and active, providing feedback on your actions, letting you drag and drop pictures, preview Twitter posts, and in all other ways behave as as you would expect and want (without being overly flashy, of course).  I’m moving the site’s Javascript from Prototype to jQuery and jQuery UI, and fully planning and executing each page as I go rather than deferring work until later.  Which leads to…
  • Complete features: having built the site once before, I know what features Mealstrom should offer, and now I intend to build all of them.  I’m scoping and building out all features of each page before starting new sections, rather than hopscotching around building one thing here, one thing there, as I did before (justifiably, since it was a learning experience).
  • Javascript testing with JsUnit

    Javascript testing with JsUnit

    Reliable code: you deserve a site that works, and I have to make one.  As I create the new Mealstrom, I’m writing code and test scripts side by side.  It’s hard to overstate the value of testing, both front- and back-end; defining how I expect my code to work means I’ll find bugs as I make them, rather than when your meal blog goes kablooey.  I can’t approach this rebuild any other way: working nights, weekends, and mornings, I don’t have time to bug fix the same code over and over again.  (With no external deadlines, I have the luxury of doing this right.)

So alpha the section header's wrong

So alpha the section header's wrong

The meal blogging page is an example of these goals at work — it’s the most complicated page on the site and the most critical to Mealstrom’s success.  I started here with my mockup (see above), tweaking and completing it over several weeks before I wrote the first line of code. As that shows, the new version is going to be a big improvement over the existing, static page — file uploads through an advanced Flash-based tool, drag and drop image sorting, tagging friends, tracking eating habits, and more.  I’m building it chunk by chunk starting with the photos, writing markup and Javascript that work, encapsulating the Javascript into classes, and writing thorough tests.  Once it’s done, I’ll have a complete page that I won’t ever have to worry about and can start the process anew for the next part of the site.

So when will this be done?   I only have a few minutes every morning, evening, and over the weekends to work on the site, so while there’s constant movement, it’s going to take me a while to finish.  I won’t promise any dates, only that this will happen, and that the new version will be worth it.  However:

I’m once again excited by Mealstrom and am eager to get this awesome new version up and running.  I’ll keep posting as I make progress; as soon as I have enough rebuilt, I’ll post new versions to future.mealstrom.com.

That wraps up the update — stay tuned for more.

Always happy eating,

Alex

Categories: news Tags:

Mealstrom 1.2 released!

June 24th, 2009 alex 1 comment

Hi everyone,

Guess what?   Mealstrom 1.2 is live!

The big, cool new feature this release is Eating Habits, an easy way to build a picture of how you eat. It’s really simple: hit the “Track your eating habits” button and then choose an option from each of the categories. (They update over the air, too, so you’ll always have the newest ones.) Tap those few buttons each meal, and soon you’ll be able to see how you eat. Turns out I eat more vegetarian meals than meals with meat (though not by a huge amount). I also have more dinners than anything else (lunch is #2), and, surprisingly, more of my meals are at restaurants than cooked at home.

Eating Habits on the iPhone

Eating Habits on the iPhone

Charts & Graphs

Charts & Graphs

 

You can check out my Eating Habits at my Mealstrom profile . Right now it’s some cool pie charts, but I’m excited to also track historical trends — how I eat on different days of the week, lag on submitting meals, average meals per day, etc. (I’m also excited to eventually revamp the profiles and make them a lot cooler and more informative.)

1.2 also has a couple other new features:

  • The date button now displays the meal’s date to help avoid accidentally picking the wrong day.
  • Other minor UI tweaks and improvements.
  • Bug fixes, such as:
    • Submitting multiple queued meals now works properly.
    • You can erase or zoom in on pictures (previously stopped working after the fourth picture was added).

I’m also excited to announce that version 1.3 is nearly ready to go, and should be in Apple’s hands this week. Once it’s approved, you’ll hear about it here.

Check it out! As always, feedback totally welcome, especially if you have ideas for intriguing things to track with Eating Habits.

Have a great Thursday, and happy eating!

Alex

Categories: news, releases Tags:

What’s been up

June 20th, 2009 alex No comments

Hey everyone,

Sorry about the long silence!  As I’ve mentioned before, my husband and I are getting married, and most of my energy over the last month has been spent planning the wedding and building our wedding website (you can check it out at http://www.twoalexonewedding.com).  I did make some progress on Mealstrom, sending a very cool new version 1.2 to Apple for approval.  Once that’s live (there’s been a crush of apps updated with the release of iPhone OS 3.0, and it’s been over two weeks), I’ll post all the juicy details (spoiler: you can track how you eat).  Version 1.3′s actually ready to go as well, so as soon Apple releases their current ward, I’ll submit the next one.  In the last few weeks, I’ve been focusing more or less exclusively on the iPhone app to the exclusion of the website (charts and graphs and Facebook feed story updates excluded), but at some point soon I’ll switch over.

In the meanwhile, some recent travels have given me plenty of time to blog, so expect a bunch of new posts both technical and general.

Cheers and happy eating!

Alex

Categories: news Tags:

Finally! We’re here!

March 7th, 2009 alex No comments

Hey friends and foodies,

I’m happy to announce that Mealstrom, my new meal blogging and sharing site, has reached beta.  Both the website and its associated iPhone app are now both stable enough and fully-featured enough for me to put them out there.  And what better time than hitting beta to publish an inaugural blog entry taking start of the project?

Without further ado, then:

Q: What is Mealstrom?
A: A meal blogging and sharing site; microblogging for meals.

Q: And what does “microblogging for meals” entail?
A: It’s tracing your life in food.  Meals are a big part of all our lives; the stories and pictures of those meals would make up a whole journal reflecting what we’ve done through where we ate.  Mealstrom is a bit like Twitter, but structured specifically for food; it’s a bit like Yelp, but about the meals you eat rather than reviews of the places you go.  Your posts can be anything from a simple “This is what I ate” and a single food photo to a photo spread and the story of your afternoon.

Q: Why should I use Mealstrom?
A: Because the idea clicks with you — if it doesn’t, that’s cool by me.  Mealstrom’s not the next big thing — just it’s a neat little tool for those of us who want to blog our meals.  If you do want to share your meals, head on over to mealstrom.com’s sign up page (with your Facebook account, if you want) and start posting meals.

Q: Why did you build Mealstrom?
A:  This all began in 2007: I started taking pictures of food because I started taking pictures of everything during a trip abroad.  (I wanted to capture everything I saw to show my then-boyfriend, now-husband, back at home.)  Once I came back, the food pictures were the ones that continued.  I’m not sure why, per se; I guess I just liked food — I was writing regularly on Yelp at the time — and meals were regular occurrences around which I built a habit.

Over the next year, I accumulated a lot of pictures that just sat there — organizing and uploading months of photos to Facebook takes way too much time and energy, after all.  I’d taken up programming again in 2008 and had gotten it in my head to build an iPhone app sometime, and one day in October I downloaded the iPhone SDK and just took the plunge.  I like food, I like programming, I want to learn, and I want my meal pictures to capture something of the story behind each meal, the what and where and with whom and the whys that created each photo.  After six months, I have a nicely working project and a product I use very day.  By using it to chronicle my meal stories, I even have a basic journal, something that captures the flavors of my life, which is a big win for someone unlikely to take up standard blogging.  Bonus points all around.

Q: So what I can I do with Mealstrom?
A: Great question!  I just happen to have a list right here.  As of today, 3/7/2009, Mealstrom is:

  • A Rails-based website where you can submit and view meals.
  • An iPhone app from which you can submit meals with pictures, locations, and descriptions.
  • Email and MMS support for your meals, for those who aren’t blessed by Steve Jobs’ handiwork.
  • Integrated with Facebook, so you can log in, share your meals with your friends, and post comments.
  • Integrated with Twitter, so you can tweet your meals to your feed.
  • Integrated with Google Maps, so you can plot a visual spread of where you’ve eaten.

Q:  Wow, sounds great.  I’ll probably give a try.  What else are you thinking about doing with it?
A: Here’s what I’ve been kicking around:

  • Tighter Facebook integration
    • Tag people who are in your meals, with a simplified signup for those who respond with the notifications.
    • Create a tab for your Facebook profile that shows your recent meals, your map, and so on.
    • Interactive story publishing for meals entered on the website.
  • Search your meals (descriptions)
  • Create metrics
    • View charts, such as the distribution of the different meals you eat.
    • Add the ability to track whether meals are vegetarian, healthy, or other discrete (and hence chartable) criteria.
  • Discrete locations — matching your description and GPS to a specific restaurant or site
  • Enhance Mealstrom.com
    • Tab-based profile to view your overview/map, complete meal list, and charts and graphs.
    • Default location option for meals that don’t have GPS.
  • LiveJournal and Blogger integration.
  • Location privacy so you can obscure your meals to 100 feet or a mile or hide the map from public view.
  • The ability to work on multiple meals on the iPhone, for when you haven’t finished entering lunch by dinner, but don’t want to lose the GPS or other info.

Q: I can’t wait to give it a try — I’m sure it all works great.  Smooth sailing ahead!
A: Umm….sure.  I’m kinda writing software, so you might want to keep an eye out for a few things.

  • Sometimes the website seems to stall on loading, at least on my browser.
  • The iPhone app <=> website communication needs some improvements so that an error in the website won’t mess up a meal on the iPhone.
  • The iPhone app needs UI enhancements, in particular a better splash screen and background.
  • The website account screen needs cleanup and organization, probably something similar to the tab approach I’ll take with the profile.
  • The website needs a better interface for picture uploads and management.
  • The website needs updated iPhone screenshots and some updated text/info all around.  (Such as this blog.)
  • The iPhone app needs to be submitted to the App Store — it’s nearly ready.
  • The website needs a forgotten password link, which some of you may need today.  (Email me if you want it reset in the meanwhile.)
  • Since the service involves GPS locations, Mealstrom probably needs a basic Terms of Service agreement.
  • The meal and meal edit screens need some behind-the-scenes improvement in layout to make them more flexible and compatible with different resolutions and browsers.
  • The whole website needs IE/Chrome/Safari testing.
  • The front page of the website needs a graphical map of how the service works, rather than the one-line text flow on there today.

Watch this blog — now that it exists, I’ll keep the blog up-to-date as the site evolves.  I’m also very excited to share some of the lessons I’ve learned the hard way dealing with some of the cool technology that’s gone into this site, so every so often I’ll be posting tech entries about Rails, Facebook, iPhone development, or whatever else I’m working.

Have a great weekend and happy eating!

Alex

Categories: news Tags: , ,