This week in Growstuff (January 24th, 2015)

A roundup of what’s interesting in the world of Growstuff (and growing stuff), over the last week.

Two new crops for the Growstuff’s crop database, suggested by danielneis in Brazil: jabuticaba (Plinia cauliflora), and pitanga aka Brazilian cherry (Eugenia uniflora).

jabuticaba tree with fruit growing out of the trunk

Jabuticaba is one seriously funky looking fruit tree! CC-BY-SA Bruno.karklis

Tomorrow (Sunday 25th), the Melbourne Growstuff crew are heading out to Victoria’s goldfields for Hackstuff in Ballarat — a morning of visiting veggie gardens for research and then, in the afternoon, hacking on Growstuff to improve the website for everyone.

Over on Growstuff Talk, our developers are discussing Javascript frameworks to improve Growstuff’s user interface. Over on Github, Shiho’s working on a new improved crop search and Miles has been getting our code to deploy automatically to Heroku from Travis-CI.

Did you miss…

Last week we posted release notes for a bunch of new website features, as well as this post about corporate social responsibility (CSR) and open source volunteering.

More from around the web

  • How reducing food waste could ease climate change (National Geographic): “When it comes to looking for ways to curb greenhouse gas emissions, food wastage is a relatively easy fix—the low-hanging fruit, so to speak—and it is literally rotting on our tables.”
  • Will that trip to Havana you’re planning ruin Cuba’s organic farming system? (Takepart): “By the mid-1990s, the government had set out to become agriculturally self-sufficient and therefore combated rapid urbanization by studying and applying cutting-edge, high-yield organic agriculture principles. Today, the system—including the organopónicos—is studied and revered by sustainable food practitioners and proponents.”
  • Latest climate change battle may center on food pyramid (L.A. Times): “A revamp of the food pyramid to take climate into account would be a bold step. Despite a major push by the United Nations for countries to rework dietary policies with an eye on climate impact, none has. The Netherlands is expected to be the first when it releases a new chart illustrating food guidelines this year.”
  • Open data is finally making a dent in cities (Fast Company Exist): “Throughout the country, we are seeing data driven sites and apps like this that engage citizens, enhance services, and provide a rich understanding of government operations In Austin, a grassroots movement has formed with advocacy organization Open Austin. Through hackathons and other opportunities, citizens are getting involved, services are improving, and businesses are being built.”
  • Underground and on rooftops, farms take root in big cities (Christian Science Monitor): “On a cold and rainy Friday afternoon, Steven Dring is tending his baby carrots in a somewhat unusual setting. The green shoots are in a tray of volcanic glass crystals under LED lights – and the tray is in a tunnel 33 meters (108 feet) underneath a busy London street.”
  • 8 ways to get developers to start using your data (Forum One): “Keep in mind that opening up your data is an important first step, but you can add even more value by implementing a concerted strategy to engage with developers. It’s not easy work, but it is definitely worth the effort.”

We’re looking for a volunteer to regularly curate “This week in Growstuff”. Check out the job description and drop us a line if you’re interested!

We’ve updated Growstuff’s website with heaps of new features

We’re pleased to announce a major update to our website including lots of great new stuff.

Major features:

  • Massive crop upload including brassicas, squashes, mint familiy (Lamaciae) and more.
  • Follow other members. You can now follow other Growstuff members. (Note: there are still some improvements to be made to the email notifications related to this.)
  • Send out regular planting reminder emails to members (although this has been ready for a while, we’ll finally be switching this on in production with this release!)

Minor improvements:

Detail of the updated homepage

Detail of the updated homepage

  • Some changes to the layout of the homepage — we’ve moved what was in the sidebar down into footer links, and given the rest of the homepage a little more breathing room.
  • Started to use and manage plural versions of crop names, eg. “tomatoes” rather than “tomato”. This is more complex than it sounds because many food crops have irregular pluralisation!
  • Small improvements to the crop detail page to make it easier to find via search engines.
  • Added Facebook contact link to footer (alongside Twitter etc)
  • Rearranged titles on RSS feeds to make them display better in browser tabs
  • Made it easier to specify the date on which a planting was finished, via a popup calendar on the planting detail page
  • Improved the flow for signing in, if you try to do something you don’t have authorization to do.


  • Improved display of crops on the “Browse crops” page, especially making sure that the text of crops with long names doesn’t overflow and mess up the alignment.
  • Show finished date correctly on plantings index page
  • Prevent the creation of a garden with a negative number for its area
  • Remove unused photos — if a photo is removed from all the plantings/harvests it was being shown on, the photo is now deleted from the system entirely.

Technical improvements:

  • Upgraded our underlying platform to Rails 4! This is a big change, and very welcome, as it brings us up to date technologically. Also bumped our Ruby version to 2.1.5.
  • Fixed problems installing libv8 on OSX (much appreciated by our developers!)

Thanks to all our developers, testers, crop wranglers, and others who helped us with all of this, and a special shout-out to new contributors Kevie, Rocky and Justin, as well as Marion, Juliet and Sam whose crop wrangling was a major part of this release!

Corporate social responsibility and open source volunteering

Does your company have a corporate social responsibility (CSR) program? Do your staff volunteer on community projects as part of it? Do your software engineers or other technical staff offer their skills to community organisations or other good causes?

If you run an open source project, especially one related to a social cause, have you ever invited companies to participate in your project as part of their CSR efforts? How do you make it easy for CSR volunteers to help out?

I’ve had the opportunity to work with a few different organisations that encourage their staff to contribute to open source as part of their CSR efforts, some more successfully than others. Growstuff also works extensively with volunteers with various background and experience, through in-person coding events and through our distributed online community. Here are some of my tips for successfully matching corporate volunteers with open source projects, and working productively together.

For open source projects

Much of the infrastructure to support CSR volunteers is the same as to support any volunteer developer. Consider whether you have:

  • A “get involved” document explaining how to join the project.
  • A “getting started” document for developers, to help them set up their development environment.
  • An issue tracker, preferably with “bite-sized” or beginner-suitable tasks identified in some way, and with as much information as is needed to implement the features described.
  • A “how to contribute” document explaining how to submit patches or pull requests, your coding style guide, etc.
  • A list of tasks that can be done without setting up a development environment, eg. testing, documentation, wireframing, tool-building, making standalone apps or widgets. (You may also have a list of purely non-technical tasks, but that’s outside the scope of this post.)
  • The ability to promptly review and integrate any work that is done by volunteers.

There are endless resources out there about how to make your project easy to contribute to; any project that hasn’t taken significant steps in this direction is probably not a suitable one for corporate CSR volunteering.

Emma Irwin, Community Education Manager at Mozilla and formerly a Participant Architect at Benetech, working on SocialCoding4Good, points out the importance of open source projects sharing the impact of their work.

I think when employees are engaged in the impact of what they are contributing to, then there is already an investment in being successful when they turn up. If employees don’t understand why, then ‘what’ becomes less compelling. For example, volunteering with the Red Cross is obviously a valuable thing to do because most of us grow up learning the impact and scope of of their work. For software projects the challenge is to bridge the disconnect between the software, and the potential enormity for impact. Mifos is an example of a seemingly small project having large-scale impact in the world, and sharing their story is a very powerful way to engage contributors.

Emma also suggests that if open source projects want to find corporate volunteers, they should seek out companies whose CSR mission is aligned with the project’s. She also recommends sharing stories of what CSR volunteers have accomplished for your project in the past.

On a more logistical note, if you’re hosting volunteers for a fixed period, like a one-day volunteering event, you will need:

  • A list of priorities or goals for the event. You could tag issues in your issue tracker, or prepare a separate document listing these.
  • A mentor or mentors available to provide orientation and to assist developers with any problems. The number of mentors you need will depend on the number of volunteers and their level of experience.
  • If you have a “product owner” separate from your technical team, make sure that they are also available during the CSR volunteering time to answer questions about project goals and priorities.
  • If your CSR volunteers will be working remotely, you will need a communication channel that is convenient for them to use. (An IRC channel may be fine for volunteers from an open-source-centric company, but may not suit others.)
  • After the event, you should report back to the volunteers’ company to let them know what was achieved, and thank them for their time.

For companies

It’s important for companies to make sure they can offer useful assistance, and not just a veneer of good works. Short-term volunteers who need extensive training cost an open source project time, and don’t return much benefit.

  • Find a project with a good technology match. If you’re a Ruby on Rails shop, look for Ruby on Rails projects that need help, and so on. CSR efforts are often organised by non-technical staff, so make sure you get a technical staff member’s advice on this!
  • Make sure your volunteers are familiar with version control (eg. Github) and other open source practices. You may need to provide training ahead of time, or give them time and resources for self-paced learning.
  • Give plenty of notice. If you are arranging a specific CSR volunteering event, I would suggest arranging it at least a month in advance, to allow the project to get ready for your volunteers.
  • Be flexible about time. Many projects are run by volunteers who have other responsibilities during business hours, or are run by geographically distributed teams in different timezones. Evenings or weekends may work better than weekdays. However, this may be a problem for your employees’ work-life balance; please don’t expect or require them to work unpaid overtime!
  • Be flexible about numbers. Ask the project how many volunteers they can handle, and follow their guidance. Too few may not be worth the overhead, or too many may overwhelm the open source project team to the point where they can’t provide mentoring or oversight.
  • Offer a venue. The open source project team may be able to come join you in person. You might also like to offer to cover travel and incidental expenses.
  • Provide a list of volunteers and their roles/skills to the project well in advance. This will help the project plan work that will productively make use of your people’s skills.
  • Put your volunteers in touch with the project team directly, at least a week ahead of time, so that the project leaders can help them get ready.

The time factor

Some companies do once-off annual volunteering days, while others have ongoing arrangements for their staff to work on open source and other community projects.

In my experience of running coding get-togethers for Growstuff’s mostly volunteer developers, here’s what I’ve learned about the amount of time volunteers, especially software developers, need to work productively on a project.

  • About three hours seems like a “natural” time to work on a project in one hit. Any more and mental exhaustion sets in. This is the length of time we use for our in-person coding meetups, and tends to be the useful length of our remote pairing sessions.
  • A new volunteer who knows the technology platform (in Growstuff’s case, Ruby on Rails), is familiar with Github, and has no trouble setting up their development environment can contribute one or two small features or bugfixes in their first three hour session. They will require about 30 minutes’ mentoring or close attention from a project member.
  • That same experienced developer will generally progress to contributing medium-large features by their second or third session.
  • A new volunteer who doesn’t know Rails, Github, or who has trouble setting up their development environment will require close mentoring for up to two hours of their first session. By the end of it they may be able to submit a tiny change, such as fixing a typo, and get started looking at a small feature/bugfix. They are unlikely to finish a feature/bugfix in their first three hour session.
  • The progress of developers in this latter category depends enormously on their other experience (eg. do they know similar languages/technology stacks?) and their ability to pick things up by reading docs and googling. Good learners with previous experience will typically only take a session or two to catch up.
  • You can productively hold multiple consecutive three hour coding sessions (eg. over a whole day or a weekend) if you take long breaks in between, have a good lunch, spend some time outdoors and/or moving around, or switch to entirely different types of thinking from time to time (eg. spend some time brainstorming at the whiteboard, rather than head-down in code). However, productivity — not to mention participant enjoyment! — diminishes with every subsequent three hour session, and diminishes more rapidly the less experienced the participants are, as they have to keep more new stuff in their heads.
  • Volunteer developers need to revisit the project at least every month to maintain momentum and remember how to work productively on the project. Long gaps in between sessions means they will need to start over with many things: perhaps reinstalling their development environment, re-fetching the code, and re-familiarising themselves with the project’s layout and processes.

The upshot of this for CSR volunteering:

  • If you want to set up a short, once-off volunteering session you will need developers who are experienced with the relevant technologies and with open source practices. They will be able to usefully contribute small features in one three hour volunteering session with minimal supervision/overhead. A well set up project (with “getting started” docs, detailed issue tracker, etc) will make this relatively straightforward.
  • If volunteers want to spend a full day (or longer) working on a project, the project will need to make considerable effort to arrange a variety of activities for when the volunteers hit mental overload on the code. This will take time and overhead to plan.
  • Inexperienced volunteers (who don’t know open source practices or the technology platform) are unlikely to achieve anything significant in their first session of volunteering, and will take a lot of overhead in supervision and mentoring. If an organisation wants to send inexperienced volunteers as part of their CSR efforts, they should consider committing to at least 3-6 volunteering sessions, no more than a month apart.
  • Some open source projects (like Growstuff!) are happy to provide training and mentoring for inexperienced volunteers as part of their own community process: to spread awareness of open source and related collaborative software development processes, to build skills among under-served communities, or in the hope of recruiting some ongoing contributors to their projects. However, companies doing CSR should understand that in this situation their staff are receiving a service (training) while contributing to a fairly indirect and abstract benefit for the project, rather than contributing a direct and immediate benefit.

Emma Irwin pointed out two major problems she sees when it comes to organisations estimating the time their employees will spend volunteering:

Underestimating onboarding time, environment setup, these kinds of things that frustrate people. So a company planning a half day event around code-contribution isn’t realistic (in many cases). Design contribution is probably the exception.

Underestimating employees’ availability, or manager-buy-in. They need to make time for employees. This means clearing it with managers – that this person will be unavailable, and any milestones associated with their work need to be adjusted. Otherwise it’s just added stress, and that’s not rewarding – we have enough of that.

How to connect

The one piece missing here seems to be how find a suitable open source project (if you’re a company looking to volunteer), or how to find a company with a CSR volunteering program (if you’re an open source project).

Two organisations that may be able to help make this connection are OpenHatch, who are mostly focused on helping people develop skills to make their first open source contribution and whose website lists hundreds of projects looking for volunteers, and SocialCoding4Good, which connects volunteers with non-profit open source projects in areas such as civic engagement, crisis response, disaster relief, education, health, human rights, and poverty alleviation.

Unfortunately, most of the (many, many) blog posts and articles encouraging people to get involved in open source are aimed at individual contributors, rather than organisations. If you know of any other good resources discussing CSR volunteering, or connecting volunteers with suitable open source projects, please let us know!

Newsletter: Happy New(ish) Year from Growstuff

There’s nothing quite as arbitrary as declaring January 1st to be the start of the year. Those of us who grow food know that the seasons shift and vary: long or short, hot or cold, wet or dry, according to far more complex systems than a number on a calendar.

packets of seeds stored in a partitioned box

Photo by Bek of Bek’s Backyard, used with permission

Still, for our northern hemisphere friends, the Gregorian calendar’s new year does mark a time of planning and dreaming about 2015’s garden. I’m seeing more and more people talking about seed catalogs and what they want to plant when the weather warms up. Here in the temperate southern latitudes, our summer is in full swing, with tomatoes and zucchini the most popular topics of veggie-gardener conversation.

Are you feeling inspired by seed catalogs? Overwhelmed by zucchini? Use Growstuff to track what you’re growing and harvesting this year.

We have big plans for 2015.

We’re building a platform to share free food-growing information, helping people all round the world learn skills, become more self-sufficient, more resilient in the face of environmental and economic challenges, and build healthier families and communities.

In 2015 we want to reach thousands more people, collect planting and harvest data from growers on every continent, offer useful growing advice to new and experienced growers alike, foster a collaborative and sharing community, and build an ecosystem of apps and services based on Growstuff’s data.

You can be a part of it.

There are dozens of ways to get involved. Here are just a few ideas:

  • Research crops to add to our database
  • Run a local Growstuff meetup in your area
  • Test our website’s latest features
  • Help us tell Growstuff’s story and share it with your network
  • Let us know your great ideas for Growstuff’s future

Come join us and help make it happen!

Upcoming Growstuff events

a hand holding a large bowl full of tomatoes, peppers, and peas

A summer harvest of tomatoes and peppers. CC-BY Oakley Originals

As usual our Melbourne coding contingent are having regular get-togethers to build new Growstuff features. You can join us at:

  • Ruby hack night — 2nd Tuesday of the month at Inspire9 in Richmond. The next one will be Tuesday March 10th.
  • Hackstuff — last Sunday of the month. This is usually at Library at the Dock, Docklands, but in January we’ll be visiting Ballarat for some veggie garden tours and a change of scenery.
  • February 4th we will be at Melbourne’s Open Knowledge Workshop at Thoughtworks in the CBD.

We’ve found in-person events to be one of the best ways to meet people who care about good food, open source software, and bringing the two together. If you’d like to hold a local Growstuff event (either a coding session, or a social get together), let us know!

Information about all upcoming events can be found on our Growstuff events page.

What’s new on the tech front

A quick update on some of our recent progress on the tech side:

  • A big change to our process: we’ve moved to Github issues to track features, bugs, and other technical work we want to do. This integrates better with our coding practices, and is easier for new people to participate in, than our previous issue tracker.
  • Taylor has led a fantastic effort to upgrade our software to Rails 4, which will lead on to many future improvements.
  • Yoong, Alex and Miles have been working on social features, including following other members, improvements to posts and discussions, and better notifications. We’ve also been working on some design for private accounts, and figuring out all the implications of that.
  • We have some massive uploads of new crops staged and ready to go, thanks to the folks who attended our London coding weekend, including Juliet, Marion, and Sam.
  • Taylor and Maki made a great start on internationalising our website, to allow it to be translated into other languages.
  • We’re actively working on building version 1 of our API, as a result of the crowdfunding we ran last year. Thanks to Paul for his work on the initial framework for this!
  • Heaps of other features and bugfixes, too many too enumerate here, but a shoutout to our new code contributors Emma, Kevin, Justin, and Wendy all of whom will have code included in our next release.

Thanks everyone for all your work!

If you’d like to keep up with Growstuff between newsletters, check out the Growstuff blog or follow us on Twitter or Facebook.

Results of our API crowdfunding, and project plans for December/January

Here’s an update on the outcomes of our crowdfunding campaign that finished a few weeks back. Since then, Alex has been travelling and running conferences, so apologies for the slow turnaround on following this up!

In total we raised $6,778 through IndieGoGo, plus a further $500 from Linux Australia who belatedly offered to come in at the “individual sponsorship” level, making $7,278 in total. Sadly, this wasn’t enough to meet our minimum to contract Frances Hocutt to work on the Growstuff API; she’s going to be continuing her work with Wikimedia APIs for the Wikimedia Foundation, and we wish her the best of luck with it!

So, as laid out on our crowdfunding campaign page, we’ll be doing a reduced API project. After fulfilling the various rewards (stickers, tote bags, and so forth) the remaining funds will go toward Alex working on a scaled-down version of the API project through December/January. This will include work towards Growstuff’s version 1 API, and examples and documentation to help people understand Growstuff’s data, APIs, and how they can use them.

Over the coming months you will see:

  • Regular blog posts on the Growstuff blog about our API work, to keep you updated on progress.
  • API samples and demos will be posted to Github in the api-examples repo.
  • Improvements to the API itself, leading to a version 1 API release, will be discussed in our API forum and will make their way to Growstuff’s main code repo over the course of the project. You can also see what work is planned via our task tracker; search for “label:api” to find all API-related work. We’ll be involving the community in this so please do dive in if you’re interested!
  • Due to the lower funding levels and Frances not joining us, we’re not able to do the group API workshops we had planned as one of the crowdfunding perks; instead, we’ll arrange one-on-one consultations with people who signed up for this perk, which was originally part of our higher-level “API Partner” perk. For all other API supporters, we’ll be in touch soon to find out more about your API use, technical needs, and how Growstuff’s API can help you.
  • For those who signed up for physical schwag (stickers, postcards, tote bags) we’ll be sending these out in December. We’ll email you when they ship.
  • To those who signed up for lifetime premium accounts on Growstuff, we’ll be in touch with you, too, to make that happen.

Thanks everyone for your support! We’re looking forward to diving into our API work over the coming months, and will keep you informed as things progress. If you’d like get all the updates as they happen we recommend you follow us on Twitter, like us on Facebook, or follow the Growstuff blog via your preferred RSS reader. We’ll be posting weekly (approximately) with updates.

We interview Federico Mena Quintero, the permaculturist and open source developer who inspired Growstuff

A while ago I interviewed Federico Mena Quintero, who I met at an open source conference back in 2012. Federico’s ideas about open crop data planted the initial seed of what would eventually become Growstuff. He posted yesterday about Growstuff’s current crowdfunding campaign: Growstuff’s Crowdfunding Campaign for an API for Open Food Data.

I used to think that in order to have a collaboratively-developed project, one had to start with at least a basic skeleton, or a working prototype — Growstuff proved me wrong. By having a friendly, mentoring environment with a well-defined process, you can start from zero-lines-of-code and get excellent results quickly. […] I encourage you to give money to Growstuff’s campaign. These are good people.

In that post, Federico also talks about the problems he has with vegetable growing advice from temperate climates like the UK — problems that led him to ask me the questions that led to Growstuff’s creation.

However, their recommendations on garden layouts or crop rotations are biased towards the author’s location. John Seymour’s books are beautifully illustrated, but are about the United Kingdom, where apples and rhubarb may do well, but would be scorched where I live in Mexico. Jeavons’s book is biased towards California, which is somewhat closer climate-wise to where I live, but some of the species/varieties he mentions are practically impossible to get here — and, of course, species which are everyday fare here are completely missing in his book. Pity the people outside the tropics, for whom mangoes are a legend from faraway lands.

Federico, who lives in Xalapa, Veracruz, Mexico, has designed his food garden based on permaculture principles. He blogs about open source (in English) and hand wood-working (in Spanish), and can be found on Growstuff as FedericoMenaQuintero.

Can you tell us a bit about your garden, and maybe show us some pics?

The ornamental garden is in front of our house; it’s a tiny thing, maybe 2.5 by 3.5 meters. We’ve also been guerrilla-gardening the derelict sidewalk across the street.

The “edibles” garden is behind our house, right outside the woodworking shop. We explicitly put the garden in the South part of the lot, to get the most sunlight, since we live in the Northern hemisphere. Strictly speaking the garden is L-shaped, because it goes around the woodshop.

This is the plan of the garden:

federico's garden

Plan of Federico’s garden.

There is a swale between the woodshop and the planting beds. Over a couple of years I filled it with wood shavings and vegetable residue, and once it got deep enough, I filled the rest with soil and some cow manure to help decomposition of the wood shavings. That swale gets a lot of water from the woodshop’s roof – there is a rain pipe with a downward hanging chain that feeds the swale. We built a little bridge, more ornamental than really practical, that lets you walk across the swale.

swale, chain, and bridge

Swale, with chain running from roof (for water runoff) and brick bridge in foreground.

Since soil in the swale is always moist, it has the culinary herbs (chives, basil, epazote, mint, something that smells like Vicks Vapo-rub), coriander, and water-hungry things like lemongrass, papyrus, and thin and thick bamboo which are just starting up. There is an underground pipe that also carries grey water from the wash basin that is above in the house.

Next to the swale there are two delimited circles for two trees, lime and fig. They stay always moist because they are next to the swale. The fig tree yields like crazy, and the lime tree just seems to grow leaves but no fruit. Next to our Western wall there are small trees planted among the grass: lychee, peach, and allspice.

On the North side, next to the woodshop, there is the other rectangle of grass, which also now has a two-person swing for us to be lazy, or for our daughter to be crazy. And on the very back of that area, by a retaining wall, there is an overhead water tank that holds rainwater from all the other roofs in the house. I’ve written a detailed description of how this works.

The main planting beds – the keyhole and the L-shaped one – have held different things. Right now they are a bit unkempt and empty, because we were traveling for some time. But they have a chayote plant that yields quite well; it’s a climbing plant, and that’s why there are tensioned wires for it to spread all above the garden. There is a passionfruit plant next to the chayote which should yield really soon, as it is just starting to flower. There is some out-of-control oregano, some civilized thyme, a monster rosemary bush that wants to take over the world, strawberries, a few leftover carrots, ginger, Thai basil, and the remnants of daikon radish, beans, and sunflowers.

main garden area

Main garden area, with herbs and vegetables.

One of our jewels is a chaya plant we brought as a small cutting from Mérida in the state of Yucatán. This is a slightly poisonous leafy plant – will itch and numb you if you touch it – that you can cook to make it safe, or you can blend it with limeade for a deliciously fresh drink. This chaya lives in the L-shaped bed, next to a nopal (edible cactus), which we should really transplant to a sunnier place than where it is.

There is a raised compost heap next to the neighbor’s wall, by the swale. It is raised, and it has a little downspout, so we can put a bucket under it, to collect compost tea which I then dilute and spread about the garden.

raised compost heap

Raised compost heap, with squash growing over it.

There is a really small grape vine behind the compost heap, which I just transplanted last week; hopefully it will grow tall and long and I’ll be able to trellis it over the swing. The garden has also had our local variety of large pumpkins, cucumbers, some roma tomatoes, arugula, tatsoi, corn, beans.

Is permaculture big in Mexico? Do you have a community of like-minded gardeners nearby?

There are very lively pockets of permaculture in Mexico – in Coatepec and Huatusco, Veracruz (not far from where I live), in Erongarícuaro in Michoacán, in a few places in Chiapas, and very probably others which I don’t know about. These people are very active:

I have bought organic seeds from them and they were amazing – those are what started our garden.

In my town we have some friends that do permaculture on a small scale – mostly rooftop/container gardens. We get together from time to time; one guy does ceramics, another guy makes soap and electronics, and I make wooden molds for the soap.

I’d say that permaculture in Mexico is not very well known yet, but the places that do it well just emanate so much life that it all seems very active!

When you travel, sometimes you tweet about “Mexican” food in the places you visit. What do you grow and eat, in Mexico, that’s different from the “Mexican” food you find elsewhere?

There are various cuisines within Mexico, all quite good, but overseas “Mexican” food seems to be a broken-telephone game of Tex-Mex.

Food from Veracruz, the state where I live: lots of seafood and interesting fritters. “Arroz a la tumbada” is about my favorite dish from here; think of red rice, watery, baked with different kinds of seafood, epazote, and a little chile – the distant cousin to paella. “Fish in Veracruz style” is white fish, in tomato sauce with sliced/sauteed onions, capers, olives, and bay leaves. “Fish in acuyo” – with a sauce made from the acuyo plant, and sauteed onions. Picadas are a fried tortilla with various toppings – beans, spicy sauces, crumbly cheese. “Picadas” means “pinched ones”; the edge of the tortilla gets pinched up before frying so the sauces don’t spill. Gorditas are “fat ones” – generally any kind of stuffed, fried tortilla.

Traditional drinks are varied. Tepache is pineapple juice, fermented a bit – it is sweet and mildly alcoholic. Limeade with chaya is delicious and refreshing. A sweetened hibiscus infusion is very popular. There is also limeade with chia seeds.

The precolumbian diet in Mexico consisted of corn-based things, legumes, chiles, and a little meat or fish. The “three sisters” planting guild is precisely corn, beans, and squash. You can basically grow anything in Mexico; it’s a large country that spans various climate zones.

Diana Kennedy’s books on Mexican cuisine seem to be the gold standard, if you are interested.

I know you’re also a woodwork enthusiast, and love to make things with traditional tools. On top of that, you’re also an open source software developer. What do you think gardening, woodwork, and coding have in common?

I actually spoke a bit about that during a talk I gave in GUADEC 2012. What they have in common is that they are about building things by oneself, or within a small community, and primarily for consumption within that community. With software it is easy to distribute the fruits of your labor to the whole world, but software development is still very much a craft.

They are skills that you can learn; each takes years and years of practice to become a master in only a small portion of the whole craft. They all have their tools, their jargon, and their lore. And just like small-scale farmers or gardeners can grow better veggies than Big Commercial Agriculture, small-scale woodworkers can make furniture that is better made and looks better than Big Commercial Furniture, and free software developers can write software that is more functional than Big Proprietary Software.

It’s not just about quality; it’s also about producing things that you or your close peers will find useful, instead of depending on Big Manufacturing And Commerce for everything.

It’s not just about quality; it’s also about producing things that you or your close peers will find useful, instead of depending on Big Manufacturing And Commerce for everything. It’s quite empowering to learn any of those skills. You learn to garden, and you practically force yourself to cook better. You learn to make furniture, and you learn lots of little subordinate skills that are useful around the house (always sharp kitchen knives! fix a hard-to-open door the right way!. You learn to develop software, and suddenly computers are not a mystery and you can work around problems in computer-controlled things.

When we first met, we talked about free/open sources of planting information. Why’s that important to you?

I’m a lazy gardener. I want a service to which I can ask, “when should I plant this?” “Any companion plants I should know about?” “Are there people close to me who have planted this?” “Help, pests!”.

Internalizing all that knowledge takes years, and a service that is aware of what/where/when you have planted could be a big help. If it could tell me, “careful if you plant your brassicas there, it hasn’t been two planting seasons since the last time you planted them in that spot” or something like that. If it could help me organize plant rotations, or figure out useful guilds, it would make the garden a lot easier to run.

Books are great, but not everyone can obtain them, or afford them, or read them if they are in another language.

There is a ton of planting information in books. And books are great, but not everyone can obtain them, or afford them, or read them if they are in another language. I feel that a crowdsourced website like Growstuff could reach just the right level of detail/pragmatism that many home gardeners would find useful.

When first discussing Growstuff, I think we also talked about aggregating planting data over the years so that you could extract knowledge from there. These and these varieties of some vegetable seem to grow better in these and these zones; that kind of thing. Data mining for gardening info would be very useful worldwide. I’m using my mother’s old gardening books, by John Seymour, and while they are excellent, European climate and crops are not really the same as what you can do in my region.

Thanks, Federico, for your time and the photos of your beautiful garden.

Growstuff is currently fundraising. Support Growstuff’s crowdfunding campaign to bring open food data to to the world!

An interview with Growstuff developer Mackenzie “maco” Morgan

Today we have an interview with Mackenzie “maco” Morgan, one of Growstuff’s volunteer open source developers. Growstuff is build by a community of developers all around the world; maco lives in Washington, D.C., where she works for a big tech company and is planning an orchard for her new house.

Growstuff is currently fundraising. Support Growstuff’s crowdfunding campaign to bring open food data to to the world!

Hi, maco! Great to talk to you for the blog. So, to start with, what drew you to working on Growstuff? What do you get out of it?

When my friend Skud said she was making an open source site for vegetable gardening, I jumped. I grew up with a mom who made 10 gallons of spaghetti sauce from the garden each summer. It was good timing too, because I was looking at moving somewhere I could garden. This seemed like a fantastic project. But I didn’t know Ruby, the programming language used to build Growstuff, so I held off.

Contributing to Growstuff is working really well for me as an avenue for professional development.

Right now, my day job is as a software engineer at a major tech firm working on some very old code. It’s in a language that has long since seen its heyday, and I’m not doing very complicated stuff, so I started to worry my skills weren’t holding their edge. I realized I needed to get up to date on the latest and greatest technologies and current industry best practices. Ruby is one of the most popular languages in use right now, and Growstuff is following all the new processes for making software better, faster, like agile and unit testing. Contributing to Growstuff is working really well for me as an avenue for professional development. Why spend thousands of dollars on some professional development courses, when I can instead spend a few evenings making the software I use better?

Do you have experience working on other open source projects? Is Growstuff similar or different, and in what ways?

Yes, I worked on Ubuntu for several years while in college and sent in patches to various GNOME and KDE projects, along with the [dreaded?] Linux kernel. I find Ubuntu and Growstuff are similar in their desire to recruit and their helpful attitude in training new developers. It was sometimes more uphill in other projects. On the other hand, Ubuntu was a lot of packaging work, integrating patches from upstream, etc. I didn’t do feature work. I am loving being able to work on new features in Growstuff.

What are you working on right now? Why do you think it’s important/what makes you want to work on that in particular?

Right now I’m working on adding photos to harvests. I want to show off my pretty tomatoes! This is actually turning out to be a bigger task than I really expected because when photos were added to plantings, they were pretty tightly tied together, so I’m having to separate them out a bit and make the photo framework more flexible. At this point, it seems to be *working*, but I need to add some tests around the photo feature to make sure we know right away if any future changes could break it.

Growstuff developer Mackenzie "maco" Morgan

Growstuff developer Mackenzie “maco” Morgan

Any features you’d like to work on in future, or dreams of things you’d love to see Growstuff do, on the technical side?

I want to work on harvest totals. Right now, we can list our harvests in kilograms, pounds, or ounces, but it’d be awesome to be able to see just how much I got out of the garden total this year.

What’s growing in your garden right now? Or what are your garden plans/dreams/wishes?

I’ve got sweet potatoes, squash, onions, and several heirloom varieties of tomatoes growing right now. I already dug up and ate the potatoes. I don’t think I’ll be planting Brandywine tomatoes again next year unless I get a drip system set up before then, because they turn out to be very sensitive to water levels and crack easily. I’m going to be starting a whole bunch of seedlings from my Opalka tomatoes, though. Several friends have asked for seedlings for their gardens.

The really big exciting thing for this fall is that I’m putting in an orchard in the southeast corner of the yard! I’m going to have 4 dwarf fruit trees and a semi-dwarf almond tree. Hopefully I’ll get that drip system in too. It’d be good for the orchard.

Anything you’d like to say to people who might be interested in the Growstuff project?

If you think of something Growstuff can’t already do, say so. Like any open source software project, we can always use more contributors.

First off, try it out. There are some handy features in place, and if you think of something Growstuff can’t already do, say so. Like any open source software project, we can always use more contributors. If you’re not a Ruby programmer (yet), testing is really helpful, and there’s sure to be someone involved who’d like to help you learn if or when you’re ready to give it a go.

Thanks, maco!

If you’re interested in becoming a Growstuff developer, check out our code, Getting Started documentation, or discussion forum.

10 reasons to support Growstuff’s funding campaign

We’re two weeks from the end of our crowdfunding campaign and I don’t mind telling you it’s incredibly hard work — especially when you manage to sprain your wrist and can’t spend too long at the computer!

Here’s how things currently stand:

We’re aiming to get at least $10,000 to have a developer work intensively on making Growstuff’s open food data more accessible and usable by the world, and $20,000 to fulfil our overall goal.

If you haven’t contributed yet, please do so! Here are ten reasons why:

  1. Growstuff’s database of edible crops is 100% free and open, licensed under CC-BY-SA. It’s vitally important that information about growing food not be locked up in proprietary websites.
  2. Growstuff’s data is international. Many other food-growing websites are US- or UK-specific, but ours gathers data on how to grow any crop, anywhere in the world.
  3. We’re edible crop specialists. While there are other open databases of biological species or garden plants in general, we’re the only ones who can tell you about harvesting zucchini flowers or all the different varieties of chilli pepper. Food growing isn’t just gardening: it’s about the use of the crops, too, which means we need different approaches.
  4. Growstuff is for small-scale growers. Most of the existing open data about growing food is aimed at big agri-business. However, small-scale growers and backyard veggie gardeners are increasingly important to a diverse and resilient food system.
  5. Growstuff is community-focused. We have a strong commitment to collaboration and transparency, and over a hundred community members from all around the world have helped build Growstuff so far.
  6. Growstuff mentors and supports new developers through our inclusive open source community. Many of our contributors come to us to learn web development, then go on to jobs in the tech industry.
  7. Growstuff supports women in technology and open source. Women make up less than 25% of people in the ICT sector, around 10% of executive positions in tech companies, and single digit percentage of open source developers. Growstuff provides a respectful, supportive environment which means that around half of our developers — including those in leadership positions — are women.
  8. We’re an established project. Many projects for food-growing data are great ideas, but they haven’t built anything yet (and some never do). However, we already have a platform, a database of hundreds of crops, and over 1200 members across 6 continents. We’re not just a flash in the pan.
  9. We are open data experts. Growstuff’s founder, Alex Bayley, previously worked on Freebase from 2007 until after its acquisition by Google in 2010, and was instrumental in the early days of Wikidata.
  10. Our API developer’s expertise and experience in working on Wikipedia’s APIs means she’ll bring exactly the right combination of analysis of developers’ requirements, hands-on coding, documentation and outreach. But she’s not available for long — if we want to work with Frances, we have to do it now.

Contribute to Growstuff’s campaign to share our open food data with the world. There are great perks for gardeners and developers, and you’ll be supporting one of the best open food data projects around.

Support Growstuff’s crowdfunding campaign for open food data

Hey everyone! I’m very excited to have just launched our first crowdfunding campaign.

Check out this video, where I talk about the importance of open data for food growers:

We’re raising money for an intensive project around our API (Application Programming Interface), to help more people use Growstuff’s data for more purposes. We’re going to focus on improving our technology platform, building demos and examples, and helping developers and researchers use Growstuff’s data to build apps, study growing trends, and more.

Here are just a few examples of the things that are possible using Growstuff’s open data:

  • A harvest calculator to show you how much money you save by growing food
  • A plugin that automatically posts your garden activity to your blog
  • Emailed planting tips and reminders based on your location and climate
  • A map showing how food-growing patterns change over time in a region
  • A website combining Growstuff’s data with other sources of information, such as nutritional or climate data
  • Data visualisations and infographics about growing patterns
  • Web apps, mobile apps, apps embedded in specialised hardware gadgets — anything is possible

We need to raise $20,000! Please help by contributing to the campaign over on IndieGogo. Perks include awesome Growstuff schwag, workshops, and other great stuff.

Growstuff’s finances, 2013-2014

Another financial year has passed since I posted Show me the money in July 2013, and I thought it might be good to post about our financial situation over the last 12 months.

The original goal, as that post explains, was to make Growstuff be self-supporting through paid memberships. Growstuff, the website, paid for its own immediate costs throughout the year, which is good. However, Growstuff-the-company had a bunch of other expenses, including paying me (Alex) so that I could live. In aid of this, Growstuff-the-company has been getting into some other projects throughout the year, as well as running and improving Growstuff-the-website. See below for details!


Here’s the breakdown of Growstuff Pty Ltd’s income for the financial year 2013-2014:

Growstuff website-related income

Growstuff subscriptions: $1294
Permaculture Victoria grant (harvest benchmarking): $1500
Awesome Foundation grant: $1000

Subtotal: $3794

Non profit, sustainability, and social enterprise work

3000 Acres: $15720
Non-profit/etc tech contract work: $1365
Training: $3000

Subtotal: $20,085


Other tech contract work: $7520

Total revenue: $31,339

income pie chart

Pie chart showing a breakdown of Growstuff’s income throughout 2013-2014.

To explain the biggest item on the list: 3000 Acres is a website for people in Melbourne, Australia, to find vacant land to grow food. I met their founders in late 2013, and talked to them about Growstuff’s open source work. They liked what we were doing, and so asked me to help them build their site using similar tools and processes. 3000 Acres is built, in part, on Growstuff’s code, and shares many features with Growstuff under the hood. In return, some of its features are making their way back into Growstuff. The funding for my work on 3000 Acres came out of a grant provided by the VicHealth Seed Challenge.

I also worked on a couple of other non-profit projects including the wiki of appropriate/sustainable technology, Appropedia. Finally, I was one of five trainers at the Fitzroy Institute of Getting Shit Done, helping aspiring social entrepreneurs to understand technology and especially why open licenses are important for social enterprise and sustainability.

In addition to this non-profit/social enterprise/open source work, I did a small amount of commercial contract work that was not open source (at a higher contract rate — non-profits and open source projects get substantial discounts when I work for them.)


Expenses of running the Growstuff website and dev community

Computer software/services – production (Growstuff website hosting, DNS, etc): $484
Computer software/services – support (hosting for dev community, backups, etc): $856
Online payment processing fees: $64
Design: $1500
Marketing and promotion (Sustainable Living Festival, in particular): $190

Subtotal: $3094

Just a note that the design work was some branding/logo work I contracted in 2013 but which stalled for various reasons — we’re just starting to use the designs that were done back then!

General business expenses

Accountancy and bookkeeping: $1,972
Business registration etc: $739
Insurance: $484
Bank fees: $25

Subtotal: $3220

Office expenses

Business premises (coworking space/virtual office): $2,035
Business premises (home office rent reimbursement): $936
Telephone and Internet: $1,506
Printing and stationery: $246
Misc office supplies and equipment: $385

Subtotal: $5,018

For most of the financial year, I had a coworking membership in Melbourne costing $220/month. When I moved to Ballarat, I switched to a virtual office that’s $55/month, and primarily work from my home office — my rent for which is reimbursed by Growstuff, the business, based on a percentage of floorspace.

Computer equipment

Laptop: $1,852
Other computer equipment and supplies: $987

Subtotal: $2,839


International: $2604
Local: $634

Subtotal: $3,238

The international travel was for a trip to the US during which I attended three different conferences relevant to Growstuff; I received a travel grant from one of the conferences which paid for my trans-Pacific airfare, but had to cover airfares within the US, accommodation, meals, etc.

Local travel was mostly train fares between Melbourne and Ballarat for meetings with clients (eg. 3000 Acres) and other events, plus a few taxi fares for various reasons.

expenses piechart

Pie chart showing a breakdown of expenses for the financial year 2013-2014

Salaries etc

Salary (gross): $12,000
Superannuation: $1,100

Subtotal: $13,100

Just a note that for most of the financial year I was also being paid by the government under the New Enterprise Incentive Scheme, so my gross personal income for the year was closer to a grand total of $22,000. Woohoo!


Repaid to self: $1,000

I put $1500 of my own money into the business early on; I paid back $1000 and still have $500 outstanding.

Grand total of expenses: $28,415

Reflections on running Growstuff for a year

The cost of running Growstuff, the website and community, for a year was $3,094. During the same year, it raised direct revenue of $3,794. So, in short, Growstuff subscriptions and the grants I received to work on it covered all our immediate expenses with a little left over ($700 to be precise), but didn’t pay anyone for their time.

When working on Growstuff, all our features are assigned points according to how much work is involved, eg. 1 point for a minor change, or 4 points for a significant new feature.
Over the financial year 2013-2014 the Growstuff developer community completed 80 points’ worth of work on new website features, as you can see in our task tracking system.

Using the Growstuff website’s $700 profit as a base, that’s about $8.75 of income per story point. If we were to pay developers for their time, a pair of coders working on a 4-point story — which typically takes at least a few hours of pair programming — would get around $17.50 each for it, and that doesn’t count paying testers, crop wranglers, and other community members involved in the process. Obviously this is not a reasonable rate; it’s not even minimum wage.

At present, my own work on Growstuff, and the infrastructure I use to do it (office space, computer equipment, Internet access, etc), are subsidised by my contract work on other projects, mostly in the sustainability/social enterprise/non-profit sector. Other people — our volunteer community — likewise offer their time without payment, and this time is in effect subsidised by their own jobs or income streams.

Unfortunately, expecting free labour of open source contributors discriminates against those who aren’t privileged enough to have a steady income stream and plenty of free time (without second shift work at home) to do it. This isn’t what we want for Growstuff: we want as broad a community as possible to participate.

Volunteering on Growstuff is not entirely uncompensated: we offer training and mentoring for developers who are new to coding, to Rails, or to open source — especially those from groups underrepresented in the field — and many of our volunteers have gone on to paid employment (or found new jobs) after working on Growstuff, often with a reference from us. However, I want the new financial year, 2014-2015, to be the year we start to pay people real money for working on Growstuff. As suggested in Ashe Dryden’s excellent post about the ethics of unpaid open source labour (also linked above), we’ll be looking into contract work opportunities and paid internships/traineeships. Stay tuned for more details very soon!