9 Months and 32,000 lines of code later

Last April I quit my job, to start a business adventure with my good friend Liam.

9 months and 32,000 lines of code later.....

Introducing yummit.co

Yummit is an online marketplace for Home-cooked Meals - if you can cook, you can sell. We give all great cooks around the world, the platform to sell their home-cooked meals online.

We're currently in "Pre-release" mode, ensuring that the whole experience is just how we want it. We'll be releasing more functionality over the next few months, so make sure to check back and see how we're getting on!

Yummit - Takeaways re-invented. Homecooked meals on demand. Sign up and refer friends, so you both earn free meals

Why?

I've always loved food, from a very early age I showed a great interest in stuffing food into my face. As the years have passed, responsibilities have increased and the days seemingly feel shorter and shorter. Sometimes, after a busy day, the last thing I want to think about is cooking. So more often than not, I'd reach for the nearest takeaway menu.

Don't get me wrong, standard takeaways are great, they silence that craving we get everyone once in a while for a bit of a "blowout", unhealthy meal.

However, I was always left feeling a little guilty and never felt I'd hit that goal of having something healthy and tasty. It was the same story, every time - unhealthy food, that tasted "good enough".

Being someone who enjoys cooking occasionally (my signature dish is Pizza - everything is homemade, even the dough!), I know healthy, tasty food does exist. I just don't always have the time. The food I wanted, just wasn't being offered by any of the local takeaway establishments in my city.

It was on a night in, in New Jersey (whilst on Holiday with Liam in 2014), where again, the need/desire for healthy food, delivered to our door, came knocking. Again, nothing local existed and we settled for a greasy, re-heated, cardboard-like food from a nearby takeaway.

We knew something had to change, both being foodies, we knew that issues like this don't get better on their own, you need a community with the same values and ideas, the same needs and ultimately, the same goal. That's when Yummit was officially born!

We know that people all around the globe, have the time to cook, homely, healthy and delicious meals. So why can't they share their creations with the rest of us?

Ordering locally-made, flavorful, healthy food, should only be a click away!

How?

I quit my job in April last year, my last day was 28th April. I handed everything over and left the building. Ready to start work on the Monday.

Monday arrived, and I'd forgotten - it was May Bank Holiday - deciding to be a "proper organisation" from day one. Liam and I decided, very early on that we should honour UK bank holidays.

Tuesday 2nd May - I woke at 7:30am, as the routine had been for the last 5 years and 10 months. And instead of jumping in the car and driving 8 miles to a desk in Leamington Spa, I went downstairs and pulled up a chair. Got my laptop out and got to work.

This continued for the rest of the year, keeping the structure of Mon-Fri, 8-4. At my previous place of work I made sure I always started on time, and finished on time. I seldom stayed later than I had to.
Working on Yummit changed that, it wasn't because I was in a rush (I had no deadlines to meet), it was purely the fact that I was having so much fun, calling the shots, using the tech I wanted, that I lost track of time. More often than not, having the best intentions of finishing at 4pm, I'd turn off the laptop gone 6pm.

I know many people would argue that one of the benefits about "working for yourself" is deciding your own hours. That's true, and that's what I did!
They just happened to align with the routine that I'd been in for the last 5 years and 10 months. I'm definitely productive early in the morning and all the way through to the evening. I've never found myself being more productive in one section of the day, my body's general rule is; If I'm not feeling really tired, I'm good to go!

Remote Working

I had reservations about working with my Co-Founder Liam, who is in Budapest, Hungary and how that might make communication, bouncing ideas around and general day-to-day tasks difficult............how wrong was I?

Looking back, working from two different countries has been a breeze. We've been in daily contact with each other using HipChat/Slack and have a consolidated task board (with Git) from Visual Studio Team Services - it has simply - just worked!

Where

I started off working from the lounge of my parent's house. This was great during the summer months, nice and cheap and sometimes even got my lunch made for me!
As the months started to cool, so did the lounge. My dad's frugality and seemingly resilient body temperature meant the heating didn't fire up and I got colder and colder.
Warmth and a change of scenery was needed. I started visiting the local library and working from there. One of my best friend's called Steven (who I was best man for recently), his mother works there, so it was always great to see a familiar face and have a chat first thing in the morning.

I would sometimes even help other library-goers with technical issues. I think my laptop with all the "tech-stickers" on, gave it a away.

On Wednesdays, the library isn't open, so I get a day-pass to Warwick University library and work from there. Blazing fast internet and the company of my sister, would be the usual Wednesday. My sister was actively seeking employment at the time, so we'd go to Warwick Uni Library to escape distractions and I'd help her craft her CV and job applications.

The Tech stack, and why?

The Server

yummit.co and blog.yummit.co both run on Azure, using ASP.NET Core MVC.
You may be reading this thinking that Startups, should be using [insert latest framework/language from HackerNews here]....but you're wrong.
At University, we were taught "programming/software development". The concepts taught in lectures were totally language agnostic, teaching the fundamentals of programming. When we needed to demonstrate these skills learned during teaching - inside lab sessions - we used C#.
After University I landed a job at a Financial Services Software house which used C#.

When I started slowly chipping away, forming the architecture of the Yummit codebase (before I quit my job), ASP.NET Core was still in beta, the improvements in speed, tooling and the framework itself were being realised.
I decided that with my decent knowledge and experience in C#, meant that I could hit the ground running and not waste time getting to grips with a new language/framework and just get on with building Yummit. Which is what's needed in a "startup situation" - get building, get productive and get releasing!

Front end

The html you see in your browser is delivered using a mix of ASP.NET Core MVC (providing the static page content), then TypeScript and VueJS bring interactivity, simplicity and performance to user interactions with the page.

I used JavaScript for about 3 years, before I had my first taste of TypeScript. I'm a developer that certainly benefits from Static Typing and using TypeScript has certainly reduced errors in my code and made me more efficient.
I didn't know VueJS before working on Yummit, I'd primarily had experience with AngularJS, Angular 2+ and Aurelia. I really enjoyed developing with each of those frameworks, however they're more suited to SPAs (single page applications) - which Yummit is not. I wanted more of a "component framework", where I could have the option of creating custom components and dropping them into the page where needed. VueJS is a tiny library that ticked all the boxes. It allows me to create custom elements with "compartmentalised" data and concerns. It's quick, very flexible and is just html/JavaScript - it just works and I've loved using it.

Initially when prototyping with VueJS I created a branch of Yummit and just started coding, the prototype code felt so clean and tidy that I just decided to merge that Git branch back into master, and that was the end of that!

Azure

Microsoft's frameworks/languages are always going to work better with Microsoft Infrastructure.....that's just how it works. Even with the fact that Microsoft has made their open-source .Net Core, cross platform.
I find it really easy to deploy C# Web Projects to an Azure Web App. I've got a custom build and release pipeline set up in free Visual Studio Team Services. It was a doddle to set up and you get 240 free minutes of build time a month - more than enough to do staging/production builds of your favourite Home-cooked Online Marketplace!

Another lure to host on Azure is their BizSpark program, once live we're hoping to enroll and (fingers crossed) we'll have loads of free Azure resources to speed/aid development.

I've written a lot of code over the past 9 months and learnt a hell of a lot of things in that time too. Also, please note, when running the code counting tool - I excluded the node_modules folder :P

Questions

If you've got any questions about Yummit, tech-related or not, I'd love to answer them! Please get in touch via the comments, My Twitter or Yummit Twitter

Future

I'm really looking forward to seeing how Yummit grows. I've already been meeting local food communities and cooks, in events around the West Midlands. I've loved meeting everyone so far, hearing their stories, how they got started with cooking and how Yummit might enable them to continue doing what they love.

ryansouthgate

Software developer, living in Coventry, loves .Net, JavaScript and learning new languages.

Coventry