Blog

Blog of a Front-end Developer, Entrepreneur, Technology Fanatic and a Gaming Zealot. I talk about some of the latest technology trends and video games, I also frequently share and discuss my entrepreneurial ideas and thoughts.

2BananaSoda - Unit Price Calculator

Team 2BananaSoda came together December 12th, 2012, for our first hack day. Together we worked on creating our first android app.

We wanted to do something simple, so our first app is a simple calculator for determining the price per units. An example would be calculating the cost between two products in a store, for this example we'll use shampoo. If you had a 16 oz bottle of shampoo priced at $20 and an 8 oz bottle of shampoo priced at $15.95 then our app would tell you that the 16 oz is $1.25 per unit and the 8 oz is $1.99 per unit. So the cheapest would be the 16 oz bottle.

The App

Mock of our app, demonstrating how it works.

This time around we had 3 people, 2 of which took up the role of developer and I played the role of the product manager and designer. Since it was the developers first time working in android, they spent a portion of time to setup their IDEs and learn the basics of native android. In the mean time I worked on mocking up what our app was going to look like. We decided to go with one screen resolution for our first android app and worry about more in the future, we went with the screen size of a Samsung Galaxy S3. After mocking up the design, I spliced it up and sent it off to the developers and then proceed to work on the app's icon that will be seen on a device's homescreen.

Icon for our app.

We wrapped our night up with a great amount of progress, getting the functionality of the app completed. We then spent extra time separately to finish up the integration of graphics into the app.

If you're interested in trying out our app you can check it out on the app store by clicking on the button above.

Base Race

Base Race is a blocky real-time strategy game. The goal of the game is to destroy your opponents base before they destroy yours.

One Game a Month

31 days ago I set out on a journey of discovery and learning. I accepted the One Game a Month challenge. The goal was to great one game each month for the entirety of the year. At the end of the year, if all goes as planned I will have made 12 games, and learned a mass amount about game development.

So here we are, it's the end of January and I've spent the last 31 days respectively, working on my entry for this month. 

The Idea

Whiteboard Concept

My initial thought was to recreate a custom map that was from a game called Warcraft 2: Battle.net Edition. The map was called Grunt Warz, you had a barracks and units that spawned around it, you could use your units to attack others and defend your barracks. The map was multiplayer which added a great deal of strategy when it was more than two people.

Technology Behind the Game

Base Race was meant to be my real introduction into game development. I have done very little game programming in the past, so I decided to make my first game completely from scratch. I decided to make my game using HTML5, Canvas and native Javascript. I am not using any frameworks or libraries such as jQuery or CraftyJS to accomplish any feature that I've implemented in the game. I decided to go with an object-oriented approach for making my game. Which lead to making my own mini game-framework, which I've affectionately named GuppyJS. Guppy being a fish that is well-known as the millionfish because of sheer amount of guppys in existence. That's how I view my game framework, just another guppy in the ocean.

Conclusion

The game in action

Now that it's all said and done I can safely say I made my first game from scratch. Is it perfect? Absolutely not. There are many features missing that I had originally envisioned, the primary being unit collisions and pathfinding. However, I am happy with the progress that I made and I have learned a great amount from just the very first month of the 12 month challenge. I am very excited to see where I am at in a few months. If you've ever been interested in game development but have never made the plunge, then I have one thing to say. Just go for it, start from scratch, and just put in the effort, it will certainly pay off.

Open Source

If you're interested in learning more about the game feel free to check out the Source Code on GitHub. Even though I've done everything from scratch I decided to make it open source as there is not many HTML5 Canvas RTS games out there that are open source. So please feel free to learn and use my code as you like, just be aware that it's by no means perfect or done. Also, I plan to continue developing GuppyJS as I continue to make games throughout the year, so look forward to seeing more!

Encourage productivity with a good working environment

For most people having a good working environment is key to success, whether it's something we realize or not. Our mood, thoughts and productivity are all affected by our environment. For each person, their ideal environment can be different.

Functionality

Having a workspace that is functional, practical and does not obstruct your workflow, should be your number one priority. Take a look at your workflow and determine how you can improve it. For me I have a lot of ideas and tasks floating around in my head, so I decided to get a Galant Glass Desk from IKEA. This allows me to easily whiteboard my ideas with Retractable Dry Erase Markers, on the desk itself. This makes it easy to keep work-related tasks where they belong, at my work desk.

I found myself getting up to get water far too often, while this may be a good way to stretch your legs, it can be interruptive when you're trying to focus. Getting a good water bottle can certainly help you out there, I opted for the Square Water Bottle by CleanBottle.

I also found myself needing to adjust the volume of my music far too often, this was a nuisance for me, as the mechanical keyboard that I use has no media keys. I remedied this by purchasing the PowerMate by Griffin Technology, it's a small usb knob for PC and Mac that sits on your desk and allows you control various programs, you can program the device to do anything you want, including adjusting the computer's volume.

One other problem I encountered with having multiple monitors is that it's a pain to turn all of the monitors on and off each time you get to the desk and leave the desk. To fix that problem I decided to purchase this Power Strip with a Remote Switch. It allows me to turn all 3 of my monitors and my LED Light Stripe for the desk on and off with the press of a button.

Appearance

Appearance is important to a good environment, something that is atheistically pleasing is much more desired than the reverse. Surrounding yourself with things that you find beautiful or pleasing is a good trick to promote happiness in your workspace. Whether it's paintings, posters, action figures or LED Light Stripes to light up your desk. You can create a look that works for you. Something else to keep in mind is that more often than not a dirty desk piled up with papers and other junk can cause ongoing stress. So it's important not to go overboard, try to keep your environment clean, so you can focus on what's important.

Colors

Colors play a big factor into our mood, however unlike most of might us believe, there isn't one schematic to how colors affect us. Colors affect everyone differently, which is why if you were to do a search for how colors affect on our moods, you'd find very mixed results. However, there is a bit of a general consensus, but the fine details of how colors affect us our variable. The best thing to do is experiment and discover which colors invoke the desired emotions and responses in yourself. Some colors might promote productivity, some anger and anxiety, others might promote relaxation. There's a pretty good article about colors affecting our moods over at eHow.

Sound

It's known that having background noise of 70 decibels is about the sweet spot for increasing productivity. But a higher level of 85 dBs can hurt productivity. For comparison, a whisper is about 20 dBs and a live rock concert is about 108 - 114. A little bit higher up, at about 150 dBs your eardrums will rupture, which explains why it's possible to have hearing damage after a concert. You can learn more about background noise and how it affects us over at lifehacker.

Conclusion

Create an environment that promotes success, one that makes you want to be there and doesn't restrict your work. I hope that I have given some insight for success and a few ideas for your next workspace. Feel free to let me know what cool workspaces you come up with!

Postponing Development of Survive

As many of you know back in September I started development on idea called Survive that I had 2 years ago. Since September development has steadily slowed to a stop, it's an incredible amount of work to get a Community passionate about creating a game together, it's also a lot of work to keep that momentum. I'm proud to say that we made a good amount of progress, with an upward of 70 people part of the Facebook collaboration group and around 25 people actively contributing in some way or another at it's peak. Which is an incredible amount of engagement that I never expected when starting the project back up.

The Reason

Everyone was very supportive of the project, that's why it pains me to have to say it's time that I officially postpone development on Survive. The last activity was 3-4 months ago already. The project unfortunately lost a lot of it's momentum shortly after I lost mine. The reason I lost my momentum was due to a family-related issue. I was the driving force, and with no one else to step up and continue to drive it, the progress continued to come to a halt.

That being said, I delayed postponing development of Survive after I found out about programmer's project also called Survive. I had hopes that we could join forces and work together in creating a game. Unfortunately he never responded to my email, and has appeared to also be inactive from the project since November.

Going Forward

The burning question for those of you reading this is probably, "Will you ever start the Survive project back up again?" and the answer is most likely, yes. Granted that the project is overwhelming big for someone with minimal amounts of success making games, I would like to continue developing Survive in the future. However, now is not the time, as of right now I'd like to focus on smaller projects like the challenge to make one game a month, details here.

For all of you who participated and helped, thank you so much for your time and contributions, they are not in vain, you take with you your experiences and the things you have learned. Also, when the project is taken of hiatus, I will see to it that you work is brought to light.

Sugar-free

I'm the kind of person who enjoys his sweets, like seriously enjoys them. cookies, cake, and chocolate milkshakes, infact, almost anything chocolate. However, when I was in college I decided to stop drinking soda and I also severely limited my sugar-intake. It was a surprise for me to see just how much energy I had gained from boycotting these two indulgences. However, over time I started eating more sugar again, and who can blame me? Sugary foods are everywhere and they're so damn good.

However, 24 days ago on December 14th, 2012 to be precise, I adopted a sugar-free diet. Now, I have fairly strong willpower, but I have to say, a sugar-free diet, especially for me, has been hard. But with any addiction it takes awhile for it to leave your system and for your brain to forget the need and desire for it. Surprisingly, some have been supportive, others have tried to sabotage my diet by trying to tempt me. But overall I've kept to the diet and I'm pleased with the results. It also helps to set some basic ground rules, anything inside the house with sugar in it is off-limits. Outside of the home, it's harder to know what might or might not have sugar in it. The best rule of thumb is to avoid foods you know for sure has sugar in it, but for entrées my policy is more lax. It's too much headache to worry about potential sugar in your dinner.

The Reason

My goal was to gain more energy to get more done throughout the day, especially after work when I use to feel really tired and sluggish, I had little desire to work on side projects and had a hard time focusing. I've found not only that my focus is back but so is my energy, so long as I have a proper sleeping schedule I can work fairly solid until I go to bed. I've also realized just how little food I actually have in my house if I take away all the sugary foods. Which has indirectly caused me to eat more real food instead of snacking on a sugary delight.

Going Forward

I will definitely continue my diet, but you're probably wondering, why not just cut the amount of sweets I eat down to a rare occurrence instead of going cold turkey? My thought was this was the best way to kick the habit, by getting it out of your system as quick as I could. I wanted more energy as fast as possible. That being said, in the future I don't see anything wrong with have an occasional cookie or slice of cake. But it will have to be part of a meal, too often I replaced my breakfast, lunch and dinners with sweets.

So If you have a something in your life that you find unsatisfactory, for example, lack of energy, I hope this inspires your to take the steps you need to redeem your problem. Sometimes we have to look at what we love most to fix our biggest problems.

Photo Credit: A little sugar in my bowl via Flickr

Hotel Fling

Thursday, December 13th, I helped make my first HMTL5 video game project called "Hotel Fling" with two co-workers during a company Hackathon.

The Idea

Hotel Fling was meant to be a game to demonstrate a process at our company, Nor1. At Nor1 we try to help hotels make more money by upgrading guests to better rooms for a discounted price. This also helps to better distribute guests to unused rooms in hotels and in return make more money. Similar to this process, in our game you use a cannon to try and send a "Super Guest" wearing a suit, cape and hard hat into a upgraded room. You get 10 tries to try and land him in the rooms which is tracked by a score.

The Team

Tom Bentz was the main programmer and Alex Wilczewski assisted in the programming of the cannon. I created all of the silly art including the poorly articulated logo you see above which was created in the last hours of the Hackathon.

The Process

We spent about an hour searching for a suitable HTML5 framework until we finally settled on CraftyJS, which lended itself to fast prototyping. We spent between 7-8 hours working on the project. To speed up our development process and setup we used a cloud-based IDE called Cloud9, this was invaluable for us to keep the pace of our work steady with minimal interruptions. Tom worked on programming specific features and I worked on making the art for those features, as I completed parts of it I was able to quickly upload them to the Cloud9 IDE. Tom was then able to instantly start using those resources without skipping a beat. We could also see eachothers changes in the IDE, kind of like how you can collaborate writing a document in Google Docs. This meant we were able to program on the same file without worrying about merging changes later.

For physics we used a component for CraftyJS called Box2D, this speed up our development a serve amount as well, including a lot of the mechanics we were looking to develop in our game.

Update: Was informed that the link to play the game was not accessible, that has been fixed.

What is Success?

Success is a funny thing, it's a notion determined by our perceptions. If we feel successful then we are successful. Much like any other emotion or feeling we can exhibit, to believe is to be and to be is to believe. We can believe that we are in love when in fact we may not truly understand what love is. Our brains are silly like that, our brain's power to make something feel real is top-notch. Animations are a good example of this, by placing pictures on top of each other, one after another, even if it's at a slow rate, it can give the perception of motion and movement. To us it feels real, even a movie, comprised of artificial characters and  an artificial story, it feels real. Which brings me to my next point, reality is how we perceive it.

If we perceive the world around us as a happy place, we will be happy. But our perception of our world can be influenced, in fact everything we perceive is based on the opinions and thoughts of our peers. Working at a company is a great example, imagine your day-to-day at work is fantastic and you couldn't be happier at your new job. Then one day you hear co-workers gossiping or complaining about specific issues within the company that you were not even aware of as being problems. Even if those problems had no affect on you, your world will feel a tiny bit less happy. Soon you'll begin to become fixated on the negative. That's not to say you might not have noticed these problems yourself over time. But your opinion of these problems might not have been biased by the opinions you've been force fed by your peers. It's possible you could have brushed that problem off by looking at the positive, especially if you are happy with your job. They say happiness is bliss, and they couldn't be any more true. Happiness is living in ignorance of the problems around us, ignoring them, being positive despite negatives. A fun fact is that being positive actually takes less energy than being negative, much like smiling uses less muscles than frowning. When we are not happy we are tired, exhausted and drained. Our minds are using so much energy focusing on negatives that we literally tiring ourselves out.

What does all of this have to do with success? Success is a bit like happiness, when we have it most of time we're unaware of it. When we don't, we focus on our failures. Here's an interesting thought, all of us, every last one of us, is successful. How is that possible? Once we are successful can we really be a failure? Doesn't that defy the meaning of success? We have success all around us, but generally we ignore it. All of us are successful in one way or another. Perhaps you landed a new job, graduated college, saved up for a car, made a cool web application or even moved to a new place, that's success.

The more we start to see how successful we are the more successful we'll be. We should start saying to ourselves, "I am successful, and I will always be successful.", because failure does not change our past successes, now does it? When we realize how successful we really are the fear of failure becomes silly.

So start believing, start doing and be. That is success.

Photo Credit: FutUndBeidl via Flickr

Games I've backed on Kickstarter

Today I backed my 5th game on Kickstarter, it's become a recent trend for me to support indie games that I feel have great potential. I've almost taken it upon myself to be some sort of indie-supporter super hero. Not only do I support the games, I tell as many people as I can about the games as well. It's something I'm starting to do more as I've started to follow the indie scene recently and realizing how much work really goes into games. Even the smaller ones with simpler mechanics can be really difficult. So I applaud and cheer anyone on who goes for it with their games and tries to make them become a reality.

Being a consumer for a majority of my life I was oblivious to the actual amount of work that went into making games. Even though I thought I had a decent understanding to the process that was involved. It's just not simple, and every game is made a different way. Making games is much like creating a startup, everyone takes different paths and there's no real defined way of doing something. So you see a lot of people do it differently and with different results. For the most part startups tend to have some sort of mentor, typically the investor(s). But that's rarely the case for game development, especially indie game development. Fortunately people who are passionate about a game will voice their opinions and thoughts about your game, though not always useful.

That's why I feel it's extremely important to do more than voice your opinion. Spread the word, contribute to the project when possible, that's become my new motto.

So with that being said let's talk about some of the cool game projects that I've backed and why I chose to back them.

Distance - FUNDED

Distance is a survival racing game that combines the intense action of arcade racing with the exploration of an atmospheric world. You control a unique car that allows you to boost, jump, rotate, and even fly through a chaotic and twisted city.

Distance was an easy choice for me, as a kid I've always enjoyed racing games, especially racing games that take it to the next level and do something fun and interesting to the genre. Need for Speed: Underground being a good example of a game I thought broke new ground. Browsing around Kickstarter one afternoon I happened upon Distance. It wasn't long until I threw my money at them. I also felt like I could relate to the director of the project, Kyle. Having attempted to work on a Kickstarter campaign a month prior, I had a good idea the amount of work his Kickstarter campaign took. Seeing their game I knew that they would be successful and that's why I said that it was an "absolutely amazing project, totally deserves all the success that I know they're going to receive.", and I still believe that.

Mid-way through their campaign they were struggling reaching their goal and asked backers to up their amount that they backed with the promise of new, better rewards in return. Feeling their dispair I did, I also continued to exhaust all my sources of communication to get the word out about Distance and also send them some words of encouragement to their Kickstarter messages inbox. Needless to say they met their goal and then some. I look forward to seeing Kyle and their team succeed far past what they ever imagined.

Planetary Annihilation - FUNDED

Planetary Annihilation brings RTS gameplay to a new generation of players in a way that's never been seen before.

Planetary Annihilation will forever hold a special place in my heart, as it is the first Kickstarter project that I funded and also the first game I funded. Feeling the empowerment of directly helping the people behind the actual production of the game was a great experience. It was this project that really got me started on this mentality of supporting the developers that I have now. It also was cool to feel that I had contributed to make this project successful especially when someone like Markus Persson had also contributed to the project. 

Godus - FUNDED

GODUS is a delightful reinvention of the god game from 22cans and Peter Molyneux, who created the genre.

Okay, I'll admit it, I'm a Peter Molyneux fan, I always have been ever since Fable 1. It's not something I'm going to deny, and he's always someone I've supported.

I know what you're thinking, he's going to make promises he can't keep, and honestly, it wouldn't surprise me, it's Peter Molyneux we're talking about here. He's always had great ideas that he's not always able to deliver on. But that's what I love about him, the fact that he doesn't limit himself and always wants to push the limits on innovation.

When I saw this game, Godus, I knew that Molyneux is going to bring something great to the god game genre, he's always been very passionate about this genre of games. So I have no doubt that he'll produce quality work with this game. That being said, don't mistake my support for Molyneux as ignorance, I know that Fable 2 and Fable 3 fell short of what we as gamers really wanted out of the game. That's why it's good to see Molyneux at his own company, 22cans, a company that he built from the ground up.

Timber and Stone - FUNDED

Timber and Stone is a voxel-based city building game with a heavy emphasis on combat, fortifications, and siege warfare.

I have to be honest here, I've always had a guilty pleasure for indulging in games with siege warfare and fortifying my defenses to the most optimal. The Age of Empires series and Star Wars: Galatic Battlegrounds being the cause for that. Combine that on top of a cool indie game experience that feels very similar to minecraft in regards to building your fortress from the ground up and you have a potion for love in my book.

Legend of Dungeon - FUNDED

Legend of Dungeon is a 4 Player Co-Op Rogue-like Beat'em'up with dynamic lighting on awesome pixel art.

Legend of Dungeon is my most recently funded game, it met it's goal in less than 24 hours. I first saw this game on Steam Greenlight and quickly favorited it and up voted it. I also tend to subscribe to a game developers Twitter, Facebook and Youtube when they are available. Not long after I subscribed I discovered that they had started a Kickstarter through Facebook while I was on the go. Without a second thought I headed to their kickstarter and funded the game. I didn't even watch their Kickstarter video. I had reviewed this game on Greenlight and knew it already looked great. A game that provides Fez-quality pixel art in combination with dynamic lighting and 4-player co-op with a dungeon-crawler theme? "Count me in", I said.

Tagteam Startups

Tagteam Startups is an incubator for start-ups to help with their lack of momentum by providing an environment that encourages playing musical chairs with other's ideas and start-ups every handful of months.

The Problem

The attention-span of companies and it's employees are too short, we lose momentum even with some of the best of ideas. Eventually the project takes a downward spiral to non-existence.

How can we fix it?

  • Change the traditional life cycle of a start-up
  • Fix the short attention-span problem
  • Create a solution for the desire to work on many ideas and projects

How it Manifested

The idea manifested from the question "How do you keep the momentum at a start-up going?" during the AskJay show by Jay Adelson.

The Solution

Tagteam Startups would be an incubator that would help startups from the beginning. The twist being that Tagteam will bring in a team to work on a pre-existing idea and they would work on that project for a period of time, i.e. 3-5 months. Then, after that period they would move on to a new project and a new team with a fresh outlook would come in to take their place. This would repeat until a startup has reached maturity and a team would become finalized. 

After a person has been involved in 2-3 projects they would then be given the opportunity to submit an idea as the next project that a team and himself might work on.

This would give entrepreneurs and eager-minds filled with ideas the chance to work in a startup-environment and learn before proceeding to work on their own ideas. It also would provide a means for rapid production of multiple projects and ideas.

Could it work?

This is a big scale project, and would require the help of influential people and a decent amount of funding. I also foresee the need to change and play with the variables for all the conditions of this idea. Changing how long teams work on projects, changing specific rules and concepts, until a good balance is found. What do you think, do you think this idea has legs? Share your thoughts in the comments below.

Do you have a Protection Plan?

I have been in situations where acting fast is crucial for retaining an account. One day a hacker got into my Xbox Live account and started purchasing games using the Debit Card that was saved to the account. Because of the fact I was notified by email when a purchase was made I was able to go in and investigate. After I realized the account was being hacked I quickly changed the password and the security question for the account.

Not too long ago I read an article about how Mat Honan was hacked by someone and was not able to act fast enough. This gave me enough of a reason to come up with some sort of a plan in-case of an emergency such as the one Mat experienced.

The Solution

Thus The Protection Plan was born, it's a Google Sites page that is publicly accessible to everyone. This page contains links to reset your password on popular websites that a hacker might try to gain access to. I will continue to add to this page, but I would recommend creating your own Protection Plan if you're at all concerned about your internet accounts or data.

Could it be a Service?

I had a thought that this could become a service offered by a company that is dedicated to keeping a page like this updated consistently and also adding the ability to go in and change your passwords for you, where ever you are with a simple call, email or button press on the service website.

What are your thoughts, would this service fly or would it fall? Also if you have any suggestions or ideas to add to everyone's personal protection plan, please feel free to share them in the comments!