Color - a crazy color picker by Devin Hunt

Color is a crazy new color picker and color swatch creator by Devin Hunt. As you can see from the screenshots it fills the whole browser window, with horizontal mouse movement changing the colour and vertical movement changing the brightness of that colour. When you click it will be added to the swatch.

The best part is that it will show you the hexadecimal value for any colour it displays, and if you share or bookmark the URL it will contain the colours you have already selected.

Bombermine - Bomberman MMO

So today I came across an interesting game, an online game called Bombermine. Its an MMO resembling Bomberman, and actually quite a bit of fun. They have implemented way more than the ‘original’ bomberman including a ‘Nyan Bomb’ and ‘Nuclear Bomb’, which are both self explanatory, right?

For the curious and nerdy among us, it looks like they are using jQuery, Underscore, and Angular (http://angularjs.org) to create the site. The graphics rendering is done using a custom game engine and HTML5 canvas.

Crude Grid Layout

I'm a big fan of using as little code to accomplish as much as possible. Recently I have been using Bootstrap a lot (which is an awesome framework) and thought to try my hand at a simple responsive grid layout.

It turns out you can go a long way with very little code. I used SASS because it allows for generating selectors in a loop which significantly reduces the amount of code, and makes the layout more configurable.

There are some kinks which need ironing out, like how the smaller blocks do not fill the entire row width in some browsers, which bootstrap has problems with as well by the way.

Sinatra - Super Quick

I've been using Sinatra every day for a while now and often tell people who simple it is to use. This is an extremely short ( 40 seconds )  demo showing how quickly you can create an application. Obviously you more work is required if you would like to create something useful, but this was done more out of my own curiosity and to see how long it would actually take.

I also cut some corners. I assumed that the gems were already available locally and even cut that bit of the video to make it shorter, and I installed shotgun which probably isn't required but a lot of people use it during development.

BLOKK & Redacted

Ever done a mockup or wireframe and thought that the lorem ipsum text looked just a little too refined for your liking? Here are two fonts which can help make them look a little more conceptual and a little less refined.

BLOKK looks very much like redacted text (black bars) and is good for very high level wireframe sketches which display the outline of large elements.

Redacted also contains the black bars, but also contains another font which resembles rough text. It is also open source and available on GitHub.

Both fonts supply you with the TTF as well as everything you need to render them in a web page.

f.lux

There are a lot of people out there like me (and possibly you) who have their eyes glued to a computer screen right up until its time to get some sleep. Whether you realise it or not, the type of light an LCD screen emits is similar to that of the sun. This tricks your body into thinking its daytime and to be awake and alert, which in turn makes it difficult for your body to shut down and get some sleep.

Turns out that someone has attempted to solve part of this problem with an application called "f.lux". What it does is change the colour of your screen in an attempt to remove the sunlight colour. The result is a orange coloured screen after sundown, followed by a slightly better night sleep. This is by no means a silver bullet but after a few hours of use I could notice that it was reducing the amount of eye strain, and disabling the app clearly revealed that the bright light that I was normally looking at was much harsher than I realised.

Its free, so give it a shot.

http://stereopsis.com/flux/

Rotated Feedback Button

I recently implemented some of those little rotated feedback buttons which you often see statically positioned down the side of a web page. They do not look difficult to implement, but unless you use an image you will need to have some CSS skills.

So I have done a basic implementation and made it public to show you my approach to this problem.

Find the code here on JsBin: http://jsbin.com/avarew/1/

I have made the elements semi-transparent to show you how they overlap and to encourage you to look at the code and pick it apart.

Most Awesome Modal Popup

I have been on the lookout for great open source code for web development lately, and today came across LeanModal, a simple modal popup dialog which uses jQuery. The source code weighs in at 4kb (780 bytes when minified) and its extremely easy to use.

Anyone who has not implemented a modal popup because its too difficult hasnt got an excuse anymore! LeanModal is extremely lightweight and super easy to implement.

http://www.webappers.com/2011/07/08/a-simple-lightweight-modal-windows-jquery-plugin/

Overflow Upwards

I recently encountered a scenario which requires page content to overflow at the top instead of the bottom, much in the way that text in the terminal (or console) applications work. Something like this:

At first I thought this would be complicated, possibly requiring some javascript, but someone showed me a very simple way to achieve this behaviour using just a small bit of CSS. Basically two nested div elements with position relative on the parent and min-height 100% on the child.

http://codepen.io/nippysaurus/full/eilmf

The one caveat is that you have to set the height's as absolute values unless you know how to make elements 100% of the page height. 

iOS Simulator Screenshot

Until now I thought that the only way to take a screenshot of an iOS app running was to run it on a real device and use the Xcode Organizer and click the “New Screenshot” button. I thought it was odd that the iOS Simulator did not provide this functionality and immediately started looking though the menu. I dont know why but I decided to use the Help menu to search for a screenshot button, and this is what I found.

If you are not searching with the Help menu, that item will just say “Copy”. Go ahead and try it.

Rate My App Dialog

This is not a problem anymore, but in the past iOS would attempt to solicit feedback from users when removing an application from the device. This let to some negative feelings in the development community who were experiencing a lot of negative feedback because users were only being encouraged to provide feedback when they were removing an application, which usually meant they were not happy with it.

For some developers the solution was to solicit feedback at a more appropriate time, like when the application was starting, or just after they had unlocked an achievement (and presumably felt good about using the application).

During the time that I was interested in iOS development I wanted to implement a feature like this and could not find a pre-built solution so started to make my own. While in progress I found that there was indeed another solution, but continued to finish what I had started.

This is the end result:

You can find the source code and some example code on GitHub.

Xcode - Pre / Post build tasks

If you have ever wanted to run some scripts as part of an Xcode build, it's easier than you think with version 4. Follow these brief instructions to add custom tasks to your build process.

Firstly select the project file in the navigator, then select the target you wish to add a task to. Then select the "Build Phases" tab.

By default you will be presented with the following four "build phases":

Those are the steps which Xcode performs to convert the code you type in it into the code which your computer can understand.

Click the "Add Build Phase" button and select "Add Run Script" to add your own item to the "build phases" list.

The approach Xcode seems to want you to take is to type your script directory into this screen. If you do opt for that approach then there is a whole lot of placeholder values that are provided to you which can make life much easier.

The other fields on that screen will be immediately familiar (their purpose) to anyone who has done some shell scripting, so there is no need to explain them.

Some notes:

  • Documentation on the placeholder values.
  • You can rename the build phase by double clicking its title (you can see above that I have renamed mine to "Run Script - Compile Fact List".
  • Drag the build to be in the order which you would like it to be for formed. (This can make it a pre-build task or a port-build task.)
  • The script will be run from the root directory of your project.

Removing Resharper

If you have ever uninstalled or disabled ReSharper and then realised that Visual Studio is not the same anymore (the intellisense and error hilighting does not work) then this is for you:

Click "Tools" then "Options" to bring up the options window.

If you are primarily using C# then select "Text Editor" then "C#", then:

Select "General" and re-enable "Auto list members" and "Parameter information".

Now select "Advanced" and re-enable "Underline errors in the editor" and "Show live semantic errors".

That should do the trick … visual studio is back to its old self and behave the way you expect it to.

iOS Wallpaper

There are a number of wallpaper apps on the App Store which promise to have the best or largest selection of wallpaper images. I'm sure some of them are great but none of them can compare to the selection on google.

Google's advanced image search parameters make it easy to find images with the right dimensions. Just specify the size and search for "wallpaper", or something more specific if you have something in mind.
If you are also a Dropbox user, consider browsing for wallpaper on your desktop, transferring it to a folder on Dropbox, then browsing this folder on your iOS device when you are in the mood for a wallpaper refresh.

My Dell XPS M1330

Well I have ordered (and recieved) a Dell XPS M1330. It is a really nice machine with everything that I need.

The machine I got is based off the cheapest configuration. I kept the slow Intel Core 2 Duo T5450 (1.66GHz) processor since I wont be doing anything too processor intensive (and because I’m on a budget). I went with the 6 cell battery and thre in a Wireless-N card. I also went with 2Gb of memory because we are still mostly using 32bit operating systems and don’t want to run into messy memory problems. Apart from that the system is standard, nothing fancy.

Of course while waiting for the system to get delivered I was doing a bit of searching to see what other people thought of the system, and found a number of problems which arise with this particular system (happens with every system these days). There are a number of possible problems, the most serious being a loud optical drive when you eject or insert media. Nothing too bad.

The first thing I did when I got the machine was to reinstall windows and get rid of those silly recovery partitions, Dell MediaDirect and all that crap. Simply put, the standard Windows Vista install disk accepts my Dell serial number, but the install does not work and Windows will not boot for some reason … you need to use the Dell Windows Vista disk )recovery disk or whatever they call it). Either way this will most likely only be until KDE 4.0 is released when I will probably install Debian or Kubuntu.

So once Windows is up and running I went through it pretty thoroughly to make sure I didnt have any of the obvious problems that other people were facing. Unfortunately I found a relatively rare one … when ejecting media from the optical drive the machine will freeze for about one or two seconds. This is definately at a hardware level because it happens while in BIOS too. So anyways I have called Dell about it and showed them some forum chatter from other people who have experienced the same issue. They are going to send someone out to replace the drive. I seriously hope that works because what do you think they will do next?

OpenGL And Ubuntu 7.10

So, you have installed ubuntu and would like to compile some OpenGL code? Where do I start … You will need to install two things,the g++ compiler, and (if you need them) the GLUT library.

The compiler is easy, just type the following command into a terminal.

sudo apt-get install g++

Follow the prompts, this should install the compiler. Next, you might need the GLUT library, which can be installed (headers and development libraries) with the following command.

sudo apt-get install libglut3-dev

All set. Compile OpenGL code without any hitches.

Sauce

Well I rocked up for a lecture today at university and the guy in front of me opens up his laptop and loads some game game which appears to be using the Source engine! Alright I didn't think The Orange Box was out yet, but it does appear that he was playing portal. The entire lecture nobody sitting near me was paying attention to the lecturer, we were all watching this guy play portal. Must say that it looks pretty cool.

What I'm surprised about is the lack of enthusiasm about the Orange Box! Seriously, I forgot that it was coming out, but I am still waiting until next week for the Xbox 360 version :-)

Vectors

When objects are represented on a computer screen they are stored in memory as a whole lot of points which are joined up and manipulated (mathematically) such that they make pretty pictures. Each point in this imaginary space is called a point, and a line joining two points is called a vector. As you can imagine, to represent a point in two dimensional space you will need two values which represent its location (or coordinate) on a cartesian plane. Vectors are normally dealt with as originating at the origin and ending at a given point.

This is an example of a point.

a=(1,2,2)

And a vector from the origin to that point.

\overline{oa}=(1,2,2)

The length of the vector from its origin to end point is called the magnitude. This is the formula to calculate a vectors magnitude.

|oa|=\sqrt{({a_{x}}^2+{a_{y}}^2+{a_{z}}^2)}

For comprehensive explanation on vectors check out the wikipedia entry.

Australian Gaming Industry

I would like to write a little about the gaming industry here in Australia, and in Queensland in general.

Many of you who are interested in game development might not realize what the bigger picture is like and who is involved. I myself was quite surprised to discover the number of game development companies in Brisbane alone. Quite interesting.

Firstly I would like to draw attention to the Game Developers Association of Australia (GDAA) and to the Australian Game Developers Conference (AGDC).

The GDAA is a sort of club where developers from all around Australia can learn from each other. They also hold events for the industry and have guests from overseas.

The Australian Game Developers Conference is really just an annual event, and I think it might even be organized by the GDAA, not sure. They also don’t seem to have updated their archives since the 2004 event.

You can find relevant information on the official web sites:

I would also like to draw attention to news closer to my home, the state of Queensland. There is a web site called Queensland Games which focuses on the development efforts in Queensland for the gaming industry. They also have information like where you can story, and job opportunities. So click on over to their site and have a look:

There are also quite a few local game development companies, and apparently about 40% of the gaming industry in Australia is located in Queensland. A few of the sites mentioned above have their own list of local game development companies, but here is my own list … it is Queensland specific:

Those are the major ones, I’m keeping this list short.

I hope someone finds this information useful.

Steam Update

I knew for ages that Valve Software was planning some cool new community and clan features for their distribution platform Steam. Every now and then I would load up steam just to see if anything had changed, and this morning was different, something had actually changed!

Initially I though that they would just make the friends system a little more stable and do some lame excuse for a clan system with no real benefit. I was indeed suprised when almost every aspect of Steam had changed in some way! The features I liked the most ...

  • Add links for other games on your computer
  • See statistics about your friends playing habbits
  • In-game interface which rivals Xfire

I always had an idea in my head of what Steam could potentially be, but every new update was never any closer to what I wanted. I can now say that Steam is very close to what I want it to be. Good job boys.