Tuesday 8 December 2015

did I say I was finished?

So this evening has been fun working on the app (lunch.ben.best)

I've got some things working, I've also decided the way I need to move forward so:
New features:
You can now by clicking on it modify the serving date / time of the meal.
I've started on, though it's not entirely there the work to add a new meal, there's lots more to be added there, but I have a plan.

It's still really interesting to return to things that I worked with a long time ago and some of the bits are really clever, getting the checking working so that it validates dates, some of the other bits that "just work". However I think I'm going to have to split out a lot of the Meteor functions so that they are separate to some of the helper methods for the steps or meals functionality. Returning to the "time" object that I'd worked on was a nice feeling of finding something I'd done nicely in the past.

I think when I next get some time it will be time to add to the wireframes.

I'm currently waiting at the hospital for a scan (nothing serious), and it's the run in to Christmas, so I'm guessing updates will be quite sporadic.

Wednesday 2 December 2015

fixed it again (again)

So I've spent a couple of evenings and I've again got my little app working locally it has been interesting re-visiting things and as ever getting code working I worked on a year or so ago.

lunch.ben.best is now running the latest version of the code (and I've checked everything into github). I'm at the point where in theory it would be possible to use the app to cook a lunch, though it wouldn't be a lot of fun. So now is the time for improving the app to make it really usable.
Then get it so that others can use it.

When I left this I had started playing computer games again, last night I decided to leave the conquering of Europe do some coding while the kids were asleep, I'm not sure if this is a good or bad thing, but while it's interesting I'll keep going. You never know I might end up with something interesting at the end.

I'm currently working on being able to change the time to serve the meal, this led me into the interesting place that is the input type datetime-local. It still surprises me how incomplete the specification and support for the HTML5 input types are. On mobile devices this box is lovely, however it's not supported on IE at all and the chrome support isn't exactly thrilling. I'll probably look at some plugins to see if I can't figure out a better solution, but I'm going to be continuing with the "get it working, then get it pretty" maxim.
I think the next steps are:
Allow date/time change working
Allow multiple meals
Allow multiple users to have meals
Sort out adding / editing steps so it's "nicer"
Pretty up everything (including making it "reactive")

I'm sure I'll find more steps and do some out of order, but it's nice to have a line in the sand, even if it then gets rubbed away.

Saturday 28 November 2015

back again (again)

Well I'm back again, the little app I was working on had stopped being fun and as I was doing it in my spare time I decided to stop...

However I recently had to choose if I was going to renew this domain and I was doing a couple more fun techy things so I thought I'd re-start the blog and use the impetus of having shelled out for a .best domain for another year as a way to return me to the blog and to doing tech stuff in my spare time.

Not entirely sure exactly where I'm going to go with this. I will probably try and get the app up and working again, although it is successfully (ish) running in its hosted environment (lunch.ben.best) the version locally isn't working and upgrading my ageing mac appears to have killed off Git. So my plan for this evening is to get things up and running again. I've got an idea for a different app and I want to have a play with some other languages (I've been meaning to look at clojure and scala serverside and coffeescript for ages).

So I'm going to spend this evening getting things up and running again, I've just installed a new ssd into my ageing laptop and that is feeling a bit like a new machine. I'll let you know how it goes and if what I decide to do.

In the meantime here's a short, silent video of me replacing the hard drive:

Wednesday 8 April 2015

broke it again...

Continuing with the let's see how bad I can mess it up plan that I've been working with so far, this evening I've fixed one thing and really broken lots of others.

I now have an app that although it correctly describes things so has got rid of the depends on rubbish and replaced it with done before which is what I needed it to be. Unfortunately it won't now let you save a new step (and I don't like that description either).

In positive news I can continue playing tomorrow so I'll hopefully at least get something saving.

I did this evening manage to get some things right. I  managed to get rid of a load of the errors that I was having to ignore in the code.  These weren't actual errors, they were jslint (a tool for telling you where you've written your code badly) not being told to correctly ignore some errors.  I'd previously tried to fix this and failed, actually getting this fixed meant I could see the proverbial wood for the trees and pointed out some actual problems that I'd been missing because I'd ignored all the errors.

The other thing that this has pointed out is that I really (really really) need to add in some unit testing.  This is starting to get embarrassing, I don't actually know exactly when I broke saving things, I think it was this evening, I can role back code changes and find out but that's a faff. Proper unit tests would have highlighted this to me as soon as I broke it.  Fortunately I pointed this out about 3 months ago, less fortunately I paid no attention.

As a sort of PS you might have noticed that I turned ads off.  The reason for this was that I no longer needed them. I'd played with them, figured out how to get them working and better than that realised how to set them up and how to turn them off.

I've checked in the current (broken code base) here:

Wednesday 11 March 2015

ahhh... not as "there" as I thought it was

So following my proud post declaring I was sort of there, I pointed out what I'd done to a "friend". He pointed out a small flaw in my logic and that the tool was completely unusable...

It's clear now that instead of having a "depends on" (which really means nothing) I need two boxes: - "Needs to be done before" and "Needs to be done after".  Ah well it'll give me a better idea of what I'm doing and no doubt cause some fun with the idea of circular dependencies...

Oh well gives me something to do tonight!

and I'm there!

Well I'm not really there, I'm actually a very long way away, but...

I have now something that's just about useable, it doesn't all work exactly as it should, it looks bloody ugly in places especially the edit and add forms.

However I am now in a place where I can start writing some front end tests. I'm expecting a large proportion of them to fail, I know the start cooking at the top is broken.  I know edit doesn't work.  I do however have enough of a framework that all the right fields are there and they all do something.

I'm pleased with where I've got to, however I'm aware that there is a lot more work to do...

Now the real fun begins...

This is where I've got to so far:

Monday 16 February 2015

it's been a while...

I've been busy with some good and a lot of rubbish things, but I think I blogged myself out...

I've not been doing nothing though, this evening I've run some updates and continued with the lunch.ben.best app, however the version at that url isn't great (is a bit rubbish) at the moment.

I'm having some issues with this due to the nature of using mongo in the back end, I was starting to write up the issue but fortunately (for you lot more than me) Sarah Mei has done so a lot more eloquently that I would have here:

If you don't want to read all of that (you really should though) the basic gist is that you'd going to end up wanting to do something relational. You then have 2 choices - 1 include other object(s) as part of the mongo document and cope with the update that means, or store the id and then write your own relationship management.  The tutorials I've been looking at for Meteor seem to go with option b and as mongo db version 3 is about to land it's possible that this will be something that will start to become at least easier...  No one I've been listening to / reading has suggested that might be happening though.

Anyway I'll try and keep going with this, thanks for sticking with it...

Wednesday 7 January 2015

a proper restart and some resolutions

I've been lax due to mostly a death in the family and the recovery from Christmas but finding a rogue like game on the pebble didn't help.  I've also started this post a few times and then been interrupted or it's been pointed out that I need to assist in the taking down of decorations.
Excuses aside here's some plans for what I'm going to do in the next year:

Get the lunch.ben.best app running*

I was really quite disappointed that I didn't manage to build this in time for Christmas.  However I managed Christmas lunch more than successfully without it.  That shouldn't be an excuse not to get it finished.

Have a pull request accepted into an open source project

This is just something I've been wanting to do for a while I've got loads from using open source software and it would be nice to give something back.

Play with pebble.js

Although the majority of pebble apps are written in C and I could go back an re-learn that it's not something that inspires me.  However playing with javascript has been really interesting these last few months so that's probably where I'm going to go with this.

Finally something interesting - plague

I've been playing with plague on the phone, it's horribly addictive and I'm finding it an interesting guilt free social network.  The concept is quite simple, you swipe up to send an article (which can be text, an image a link etc.) to the people near you or down to not send it on.  I've found some interesting bits. My largest concern with it is if it does gain in popularity then it'll be filled with less savoury images and links, that have thankfully so far been missing.

*By running I mean in a state that I can use it for cooking a meal, once that's done I'll look at additions and shine.

Friday 2 January 2015

so that was Christmas...

Well it was fun, with lots of food, presents and excitement.

Perhaps unsurprisingly I didn't get the app that I was building to sort out the cooking the Christmas lunch finished.  I'll continue working on this, but with the urgency now removed I've decided to take a break.  After all this is supposed to be fun and it's something I'm doing in my spare time so taking a bit of a pause should be fun.  On that note I managed to not touch a laptop for over a week over Christmas which was a nice break.

As a surprise Christmas present I was given a pebble for Christmas, it's been lots of fun playing with it. I've also had a few frustrations, I think this deserves it's own post so I'll write one up and put it in after I've finished this.

I'll also try and sort out an interesting things post later today.

Over all I've had a fab Christmas and today is back to work, let's see how that goes...