The MVP (Minimum Viable Product)

As I work on more side projects the concept/idea of a minimum viable product is becoming more and more important; especially for someone like me who generally builds products alone with limited resources. I have started, put on hold, never finished or completely shelved a large number of side projects since I started programming. The reasons range from I lost motivation (which is a shame) to I didn’t have a complete understanding of what the applications true purpose was anymore (poor planning and design) and how it would benefit the user (complete lack of understanding of the market and what users are after). The last one started to become very common and I needed a new way to approach my side projects. Working on something cool and fun is great and all but there is a high chance if you don’t have a clear picture of what you want to achieve and the minimum requirements needed to distribute your app to users then your enthusiasm will at some point dwindle away. Also if you start with an idea that is so big it can become daunting and you will never finish it.

I started taking a new approach to my side projects now. Whenever I start, I note down what I exactly want to build (at a high level only), how I feel it would benefit the users (very important to understand), and what are the minimum features needed to ensure that I can get it to user’s devices to make it worthwhile using in a timely manner (the details are important here). Not only is this process helping me focus and know exactly what I need to achieve but it also allows me to mentally picture a roadmap of sort. I can easily see that features A and B need to be done for the application to be worthwhile and features C, D and E can be easily added later in patches and with feedback from users I can continue to refine and craft an app better tailored to them.

Why am I posting this you may ask? Well several weeks ago I posted about how I am/was going to be working on either one or two new applications. In that time I managed to get a clearer picture of what I wanted to achieve, how it would benefit someone and what the minimum features needed to be implemented for it to be worthwhile. If I didn’t spend this time understanding this then my new project probably would have eventually been shelved at a later point and I would not have built an end to end product for people to use. With this new approach I not only get to showcase my skills with complete apps (fundamentally the absolute minimum to be worthwhile, but apps nonetheless) and provide a product people will hopefully find useful in a timeframe that isn’t insane.

Just in time for the start of the new financial year I will be releasing an alpha version of my bill tracking UWP app in either late July or early August for the Windows Store (more information about this when the release date gets closer). I have a very basic prototype up and running and will be working on refining that to be the final app (took under three hours to get something I wanted functional thanks to the great documentation Microsoft has on UWP development, C# and XAML). Until the app is released I will be trying to write more frequently covering certain aspects of the app, what I have enjoyed programming and what I have had difficulty doing. Stay tuned for that because July and August are going to be jam packed full of programming goodness.

My E3 2017 Summary

It has been a very busy week (and weekend), and not just in the gaming world. With me being a massive gamer I was paying close attention to this year’s E3. I was surprised and fairly satisfied with the announcements, especially from coming from the Microsoft Press Event (to be up front, I am a massive Xbox and Windows gamer so there is some bias in what I am interested in). Below are my memorable moments from E3 and the games, products, features or services that I am looking forward to the most or am excited to get my hands on (in no particular order):

  • Microsoft Xbox One X (aka Project Scorpio):
    • What more can I say than, “The World’s Most Powerful Console”? True 4K gaming, HDR and Dolby Atmos support. Even though I do not have a 4K TV, having the games supersampled on my brilliant 65” 1080p Panasonic TV and reducing the loading times while increasing the framerate is always a bonus. Day one purchase for me, no questions asked 🙂
  • State of Decay 2:
    • I absolutely loved the first one. A little rough around the edges but it was super fun. It was a great zombie survival game. Happy that they are releasing a sequel. Looks like they have doubled down on what worked and removed elements that were a pain and fell short in some areas. Another day one purchase for me.
  • Crackdown 3:
    • Terry Crews. Can I get a hell yeah? Collecting orbs has never been so much fun. The chaos and mayhem I created when playing the original and sequel will always have a special place in my heart. This sequel has been a long time coming and I am looking forward to this one.
  • The Evil Within 2:
    • The first was a horror masterclass IMO. It knew how to create the most intense and gripping moments, while also pulling back and letting you do your thing. If the sequel is anything like the first (and from the videos I have seen, it is) then this will be a horror game that I cannot pass up on. Any true fan of horror games will most likely be keeping this on their radar.
  • Wolfenstein II: The New Colossus:
    • If there was one game that was worthy of a sequel it was the rebooted Wolfenstein: The New Order game. The reboot was a masterclass in showcasing how an FPS should and can be created. Pure chaos and fun with characters that felt unique and memorable. From the trailer this appears to be more of the same. New guns to blow your enemies into giblets, what more could a FPS fanatic want?
  • Star Wars: Battlefront 2:
    • Did someone say battledroids? A beautiful, rich and engrossing experience from what I have seen. Nothing more needs to be said. I grew up playing with Star Wars toys and a mate of mine summed up the new series perfectly.

It is a Star Wars kids dream. EA and DICE have crafted a sequel where you can go in and play with your favourite Star Wars characters and worlds you love; just as you did when you were a kid playing with your Star Wars toys.” – DEFJESTA 17.

  • Anthem:
    • This was a surprise, coming out of left field. Most of the games BioWare create are magical. From the characters to the story. Anthem looks to be EA’s answer to Activision’s Destiny. A little disappointed with the game that is Mass Effect Andromeda, so I am cautious about this one. Will be paying very close attention to this and will make a decision to pick this up at a closer date, probably after the reviews. Will also talk to my mates to see what they think, it appears to be heavily co-op focused.
  • A Way Out:
    • It is great to see a developer come out onto the stage and be so confident and pumped for the title that they are developing. This one was a favourite of mine when it was shown at this year’s E3. It looks unique and ambitious with plenty of potential. If they can pull this off then this will be a really enjoyable experience with replay value galore.
  • Sea of Thieves:
    • Nearly all of my Xbox mates are looking forward to this title. A romp across the open seas, having a blast looking for treasure and fighting other pirates. Something about this game reminds me of the Fable franchise, which is a good thing. Everything that I have seen of this game is leading me to make this a day one purchase.
  • Middle Earth: Shadow of War:
    • The Nemesis System was nearly perfect. Having refined it and having what appears to be objectives that can be failed and never replayed, makes everything worthwhile and meaningful. It just builds from a solid first game outing.
  • OG Xbox Backwards Compatibility:
    • This was a complete and utter surprise. I know Phil Spencer said the titles in this backwards compatibility list will be smaller due to licensing, but I am still looking forward to playing some OG Xbox games [1]. Please let KOTOR 1 and 2 be playable *fingers crossed*. So to the entire Xbox team, thank you for this, from the bottom of my heart. I know we didn’t need to have this feature, but it shows you really care for what gamers find important; and this is playing games no matter the generation.
  • Ori and the Will of the Wisps:
    • When this came up and the music played, a tear shed from my eyes. The first game was beautifully crafted. The tight controls, perfect art style and masterclass score made Ori and the Blind Forrest deserving of a sequel. Day one purchase, no questions asked.
  • Metro: Exodus:
    • When the 4a Games logo came up on screen, my brother and I both widened our eyes at the same time. Could it be a new Metro? Boy were we jumping for joy when it was. The first two games were not only gorgeous but were difficult. Day one buy again.
  • Forza Motorsport 7:
    • The only racing franchise now that I play is Forza, sorry Need for Speed. Be it the brutally realistic Motorsport series, or the more arcade Horizon. This game is really going to showcase what the Xbox One X can really do in 4K at 60 fps. I bought Forza Motorsport 5 when the Xbox One launched and I will be buying this racing game when it comes out for the Xbox One X as well.
  • Vampyr:
    • Coming out of nowhere, this game intrigued me. I need to see more of it, but from what I saw it looks like it is going to be fun. There is something about the setting and vampires that gel well. As the release date comes closer and more information is released I’ll be making a decision whether to purchase it, or wait for it to go on sale. Either way it will be going in my digital game collection.
  • Age of Empires Definitive Edition:
    • Growing up as a kid, this franchise was my got to RTS, next to Warcraft (sorry I didn’t play StarCraft). I played the HD remaster of the second game and enjoyed playing that one, even though the multiplayer matchmaking was slightly broken (but that is for another time). This will likely be a game I pick up purely based on nostalgia.

Being such a solid week for gamers, no matter what platform that you play on or the genre of games you prefer, there is something out there. I probably missed some other games, but these are the ones that I remembered off the top of my head. If there are others that you think were worthy of mentioning then feel free to add them in the comments below.

Not One but Two New Apps Incoming

So it has been a little over a week (and I know I promised myself that I would be posting weekly, and I am a little late, terribly sorry) but I have been thinking what to write about. Do I write about my BJJ training and my upcoming grading (only one more day left)? The absolute blast I am having playing Prey or PLAYERUNKNOWN’S BATTLEGROUNDS with my friends? Or do I write about what I have been working on at work (been too busy to work on personal projects sadly)? But after a quick chat to my dad I know what I want to write about.

Before my dad and I had our chat, I knew for better part of a month what my new app was going to be. The idea I had for the app was a simple finance tracker where you can easily see your expenses and subscriptions. The reason that I am writing this app is so that:

  1. I can get some experience writing in C# and for the Universal Windows Platform.
  2. Better manage my expenses and subscriptions without having to use Microsoft Excel (not that Microsoft Excel is bad or anything).
  3. Potentially help others who need to track their expenses and subscriptions.

There are other apps or services on the market already but as my first and third points clearly state, it is about me learning and developing new skills while creating something I am going to use and potentially others as well. It is not all about the final product/solution for me.

Back to my chat with my dad now. He asked if there is an easy to use app or service that my mum can use to ensure that all the bills are paid on time, something to simply remind her. I first thought, “What? Are we not paying the bills on time?”, he said it was more of a measure to better budget and ensure nothing slips though the cracks; then I thought “Do we not have enough money to pay the bills?” Again he assured me everything is good and it is more about a better management system than the current management system. In my house we all use Windows machines (Windows 10 in particular), so I suggested first to use Cortana to set reminders. But then I remembered that she uses a local machine account and does not have a Microsoft account. Even if she had a Microsoft account, she really is not good with technology, especially computers. Creating an account, keeping it secure and having her manage something on the computer would be a little of a stretch if I was asked. She needs something simple, something that is easy for her to get a quick overview of all the bills that need paying when and how much. The UI needs to be basic as well, not just functionally basic.

That is when I decided to work on another finance app. A simple bills tracker. The user will be able to see what bills they have outstanding, what is due first, and how much. Nothing fancy and something that even my mum could use. I don’t know about most people but having this tool would be super useful and even better if someone like my mum could use it easily. Are there apps out there already? Again the answer is yes. But this way I can again work on my skills and tailor the app to suit my parents needs.

So there it is. Two new apps that I am working on. One that will be able to help you track your expenses and subscriptions and one that will help you manage your bills. Maybe they will end up being a single app, not sure yet. It would depend how I design the apps both visually and architecturally. Right now I am going to be focusing on bills tracker app to help my parents, and then either combine the finance tracker app to the bills tracker app or work on the finance tracker app as a standalone product.

Stay tuned for some new posts about the apps (or app).

BJJ White Belt 1st Stripe Incoming

I love Mondays. I know plenty of people that dread Sunday nights because of Mondays. However I am the complete opposite. Sure I have to go to work but I generally enjoy what I do at work, if I didn’t then I’d probably not be there. But what really makes me love Mondays (and Wednesdays) is going to my BJJ class at night. To make it even better and to ensure that I actually go is that I attend the school with a college. So there is no way for me to dodge a class (not that I would as I am enjoying it), but there is some accountability there 😉

As the hours tick by during the day I get more and more excited. I have been going to this school for a short period of time and I am nearly ready to attempt my first test and get my first stripe on my white belt (so excited). Everyone who I roll with is super friendly and being several stripes or belts higher destroy me but are always willing to give me tips so that I can get better during my rolls. Do I get steamrolled sometimes when we roll? Definitely, and it is not sometimes, its most of the time. Do I get super confident when I don’t get submitted and can prevent people passing my guard? Absolutely, it means I am doing something right.

I still have so much to improve on though from my guard pass protection to my triangle choke from closed guard. However by constantly training and going into the school and attending class at least twice a week and giving it my best I know I am going to get better. By not being carried away, not having a massive ego and knowing that I am still very raw at BJJ who will get submitted and passed I can learn better. Patience, practise, and perseverance will always prevail. Here is hoping my next BJJ post I’ll have my white belt with one stripe (if so then I’ll end up posting a picture).

For the people that train and practise BJJ, how are you finding it? What do you find most challenging? And what do you feel is the most important idea or concept that someone like me should take going into each class?

All the best people and good night.

My First Post

I hope you’ve had a great weekend so far and now a new journey for me begins.

For the last two months I have been toying with the idea of whether or not to start my own site/blog. I know how important it is to have your own space on the internet and not entirely relying on services like Facebook, YouTube or LinkedIn to promote yourself.

By creating this site for myself I am able to showcase what I am working on, what video games I am playing, what books I am reading, and just my general thoughts on technology ranging from mobiles to software applications. So if you like those topic areas then stay tuned because there is more to come.

Now that I have my site up and running I can start focusing more on the side projects I am working on without worrying too much about how to promote myself at the same time. I plan on writing at least weekly about what I have been doing, or if there is something that I feel I need to write urgently then I’ll have impromptu posts.

Let this magical journey begin…