I'm really happy with it and will definitely be taking part next year :)
So it's been a while since Hacktoberfest and I had actually forgotten about the t-shirt that you get for taking part, but the other day it arrived!
And there it is!
I'm really happy with it and will definitely be taking part next year :)
That's right Digital Oceans Hacktoberfest is just about to kick off!
I'm going to give it a go and use it to motivate me to do some more work on the moodster API.
I've made some real progress and the FastAPI version of the Moodster API is almost functionality equivalent to the previous version.
Wish me luck!
Recently I've had one of my Software Developer friends join me on the project to help push the app side of the project forward. Glen has spent the past few years honing his craft as as Web Developer, which makes him perfect to bring on board for this frontend work for the project.
This is a really positive thing for multiple reasons:
Anyway lets show off some progress photos!
Here are some of the basic screens we have put together for the moodster mobile apps:
So we currently have:
So I've decided to move my home office around, mostly so I could fit in my new whiteboard. There was some deconstructing of a wardrobe and some drives to the tip but that's all done with now and I'm pretty happy with the result.
It's not all that exciting really but it has been a positive move for me, as it's been one of a few things I've been doing to try and get myself more organised. I love whiteboarding so having one of a decent size at home is going to allow me to think about architecture and design a lot easier on my home projects.
The New Journal
So a while ago I came across the Self Journal by Best Self Co and thought it was a really great idea. At the time I didn't think that I really needed everything from it though so I decided to roll my own with similar sections but I would write the template out myself for each day/week. This worked for a little while but I got bored of spending so much time simply writing out the template for the day before even getting the planning part, so I soon dropped it.
Recently I've decided that I need to get more organised again and then I recalled how effective I was being when I was using my journal. So I've decided to give it another go, except this time I've gone full force and had my templates all printed out and bound together into a fairly professional looking journal. By no means does it rival the quality of the self journal but at least it won't get torn or damaged from being carried about in my laptop bag.
Progress so far...
So I've been using the journal for a 3/4 days now and I'm actually stunned out how effective it's been. I've started a project which is my "13 week Goal" for the Journal and It's going so much better than other projects that I've started in the past.
Not only have I been working on development at home more I have also been getting more done at work, doing general chores, DIY and even looking after my health.
Needless to say so far it's all going well, I just hope that I can keep it up.
As always, when I wrote my last post I was lucky enough to have plenty of time on my hands. Recently however work has been some what manic trying to ensure that our team meets the delivery date for our new feature, which has had a knock on effect with my own projects.
I'm hoping to get back into this CMake work and really revive the JBEngine project but until work lets up I don't think that's going to happen. I'm simply writing this post to try and keep this all at the forefront of my brain. I really don't want my motivation to slip on this again!
So I've decided to revive the JBEngine Project. I gave it up a while ago due to lack of motivation when trying to make it cross platform. The main reason for that was the steep learning curve for using CMake and generally having no real milestones for a very long time. The project was in a state of failing compilation for so long that I ended up giving up. So how am I going to be able to motivate myself this time?
Agile, and how it's effected me
So being a Scrum Master at work for the past work or so I've found out how important it is to break tasks down into small manageable goals/stories. In doing this I will be able to keep myself motivated by ticking things off in my task tracking application. There are still going to be a few problems getting started though.
Too many changes!
So during my development almost a year or so ago I had my project in a state where there were many files edited/added such as many CMake files and lots of changes for making the source code cross-platform. Due to my frantic approach at trying to get the project fully working I now have multiple machines with various files edited with no way of knowing which are required, which aren't working correctly and which I need to just get rid of.
Step by Step Plan
I'm going to take things step by step now, just to get the project in a clean state before making any major changes.
I want 'git status' to tell me that my repo is completely clean before I even consider making any new changes.
That's all for this time,
So Vulkan was released today! What better reason to do a blog post, when it's been so highly anticipated for so long. I can't wait to get stuck into the API and Reference documents and start trying to throw some tech demo's together.
I have just got hold of the SDK and had a little play around with the Demo's, I've not managed to get much done but the whole thing does look much more "DirectXy" which will likely have it's good and bad points. for example the horrendously long class/struct names. I've already seen "VkPipelineInputAssemblyStateCreateInfo" as a name and I'm sure there will be plenty longer. It will obviously have it's benefits in terms of performance but I'm not sure we will really experience that for a while. Anyway here is a quick video of me after messing with the textures a little with the cube demo:
As you can see it all looks a little messed up. The cube is spinning incredibly slow as well as I don't think it uses delta time for the rotation, so the recording application almost halted the rotation. What can you expect from a half hour mess around?
So what will I be doing this year?
It's been a while since my 2015 post-mortem and I really wanted to point out some of the things I will be concentrating on this year. I have just fully moved in to my new flat with Meg in Blackpool so that is the reason I haven't done any real work or blogged for a while.
So this year my main focus is going to be on:
Anyway that's pretty much it, oh and I did do some work with blender over the past month so here is some dev art to laugh at:
It's supposed to be a Starfish, in case you were wondering.
Whilst trawling the gamedev.net developer journals for inspiration, I stumbled across a post that someone had done as a reflection of what he had achieved from the previous year and what his plan was for 2016. I thought this was an amazing idea so I'm going to do it myself. Hopefully this should give me some motivation to finish things off and also some direction with what I want to learn next. So here goes...
2015: Looking Back
Just looking back at my posts from last January I was at that point still developing the in's and out's of my Entity Component System. I had only just implemented Awesomium and was still working on my "Level Editor" for this amazing game I was one day going to make. If I could have given myself some advice It would have been to give up on the Level Editor and the ECS and condense my project down massively. Unfortunately I had to learn the hard way!
I managed to get the ECS working in the end and I am fairly happy with the implementation as it uses some complex patterns (CRTP, Observer) to achieve what it does. Also I learnt a lot about using templates in C++.
The Level Editor and the original game idea I scrapped although that wasn't until June when I decided to get a fresh project and integrate the new ECS into it. I suppose I can put this down to a learning exercise.
It was August 8th when I decided to create a "Space Invaders Remake" using the new baseline JBEngine and ECS. Since then this project had come a long way and is now approaching the finishing up and polish stage. I am really impressed with the work I have done on this. Whilst working on this game I have had to re-work/refactor a lot of the physics code in JBEngine, which is something that can now be reused in future projects.
Career and Development
I have come a very long way in terms of my career since the beginning of last year! I had just started out at Inspired Gaming and although I knew I had lot's of knowledge about programming, I still felt as though I was a junior developer.
I went through a big change in terms of adapting to a new codebase after being so used to working with Arden's monster of a codebase. Learning an application's flow and the architecture is something that only comes through practice, and working at Inspired gave me that. Some of the key skills I will take away from Inspired are:
Along with the technical skills I have developed much more socially, being able to join a new team and integrate quickly. Joining a new company is difficult but as long as you put in that extra effort at the start to socialise, it makes your job and your life much more enjoyable. I have made some great friends at Inspired and will hopefully be seeing them soon in 2016.
In June of this year I left Inspired Gaming and joined IBM. At the time I was very fearful of this decision as the role was to work as C Developer rather than C++ which I had been doing in my previous jobs. To me this felt like a step back in terms of gathering skills but I also have always wanted to work for one of the Big Blue's so I went for it. I think having one of the industry giants such as IBM on my CV couldn't hurt either.
Whilst working at IBM I have actually only done a small amount C development. Instead I pushed for the opportunity to work on a newly starting project which has required me to use python.
I have learnt a lot since being at IBM specifically more about hardware, networking, storage and virtualisation. A lot of the things I have learnt is how much of a nuisance it can be working for a massive corporation. Having company wide decisions pushed on you when it is not the correct decision for your situation. Here is a list of the technical skills I have learned since being at IBM:
The list could go on and on! The main piece of work that I have worked on at IBM I have been the lead developer on. This has required me to create a design document, providing a solution that we will then implement. I have also had to give direction to and collaborate with a team of 3-6 other developers to allow them to accomplish what is in the design.
I have once again had to integrate myself into another team, this one being now up to 80 people. This has been fairly easy as the work environment at the IBM Manchester Lab is really friendly. I have already made some great friends and feel as though I am now an integral part of the team.
In terms of my living arrangements I have moved flat and I am going to be moving again shortly. I moved from Manchester's Northern Quarter in February of 2015 to a flat just off Deansgate Locks. This has given me the opportunity to see more of the city. Some great bars for the summer like Duke's 92, Rain Bar, Atlas bar and many amazing restaurants.
For the past year I have been in a relationship with Megan (Megatron). We have had some amazing experiences together already! Going for long weekend breaks to Chester, Grasmere, Windermere. A great holiday in Portugal, going to see Wicked! and a lot of hilarious nights out. I can't wait for the adventures we will be having next year!
In terms of my fitness, whilst being at IBM I've managed to maintain my enthusiasm for going to the gym, and playing squash. I now enjoy playing Table Tennis almost every day at work and playing Football on Monday nights.
So all in all this year has been an amazing one for my career, social life, projects and personal development. I realise this post is now pretty long so I think I will leave the "What's Next" part to be a separate post.
Happy New Year :)
Okay so this a blog post basically to express my own dissappointment.
I don't normally do negative posts because... well why would you want to be negative? positivity breeds motivation. At this point I think I just need to talk about the reasons I am not being very productive and in talking about it hopefully make a change.
So I went on Holiday a while back and since then my motivation for doing my project is almost none existent. I think the combination of getting back into working life and also getting into a couple of games is the cause of all this.
For a while I was playing Counter Strike: Global Offensive almost every weeknight. Then on the weekend I was spending time with my girlfriend and seeing family/friends. I got way too into this routine, more specifically I was becoming a little addicted to CS:GO. This was to the point where I would forget to have tea or do any chores around the house. So a week or two ago I realised I had to stop. Playing it wasn't even fun anymore either as I had progressed to a level where it was far too challenging for me to actually get any kills/win many games. So at this point I was just getting frustrated, except I had to play "Just one more" until eventually it was 1am and I had work in the morning.
So the other day I realised (with a little nudge from Meg) I needed to uninstall the game in an effort to hopefully start doing something productive. So I did. I uninstalled it, and this is the first week where I haven't played it at all in a long time. I have however recently bought a load of old school RTS Games (Age Of Empires II, Cossacks:Art of War, Cossacks:European Wars). When will I ever learn! So this week I have managed to play Age of Empires each night and I seem to be falling into the same trap. The only positive from this is that the panning of the camera makes me feel a little nauseous and so I can't play more than maybe 2-3 hours. Because of this panning problem I am hoping I will get bored of playing shortly and then I can concentrate on doing at least a little bit of work on my projects.
Not a technical post, more just a look inside my strange brain.
I am hoping just putting all this stuff down will help me realise how daft I am for playing games so much!