HTML5 Game Experiment

stc1I thought I would have a go at making a simple game using HTML5 and Javascript, also used the rendering engine pixi.js. The game is called ‘stab the crab’, it’s very simple but I just wanted to dip my toes in and have a go. It works on Desktop best in IE9/Chrome, bit slow in Firefox. Also works well on mobile in Safari/Chrome on the iPhone, and most Android browsers I’ve tried (though not all the sound works on mobile, as there isn’t a full implementation of HTML5). It was fun to make, I got to improve my Javascript skills a bit, and made some graphics which I hadn’t done for a while. Thanks to Chris from my band for providing the funny voices!

http://games.allthebeesaredead.com/ – Play it here.

stc2My next step is to get it working inside an Android and iOS app. First experiments with Android using a webView have proved to be not viable, it works but no sound, and runs way too slow. Apparently this is a problem with webView implementation and Javascript engines. Currently looking in to using CocoonJS to compile the HTML5 app for Android and iOs but there seem to be problems with pixi.js and CocoonJS working together.

I’m really keen on getting HTML5 interactive content to work in mobiles apps, as this will mean developing once but then utilizing across Desktop, phones and tablets.

SASS and Less for CSS pre-processing.

I’ve been looking into CSS pre-processing this week and have checked out both Less and SASS. I kind of liked Less but after using SASS I felt it was a lot simpler and straightforward. Basically start with a .scss file where you can use variables, mixins and nesting, similar to Less then compile that into a normal CSS file which can be used for production.

SASS relies on Ruby, so to set it up and use it there is a lot of command line stuff! Where as I don’t mind getting down to the command line for fun while messing around with my Raspberry Pi at home, for work I’d rather something easier. I found this program called Scout, which takes the hassle out of installing ruby, compass etc, and having to drop into the command line. You can quickly install Scout on Windows, select a source directory for your .scss, and an output directory for the compiled .css file. Scout will watch your source file for changes and make a new CSS file when required.

The SASS website is here : http://sass-lang.com/

And download Scout from : http://mhs.github.com/scout-app/

If you’re looking for a good explantion of CSS preprocessing then read : http://www.vanseodesign.com/css/css-preprocessors/

Newport Slang Translator App

nsla2

nslang1This project illustrates the creative side of my job, I project managed but I can take no credit for any coding on this one. I did however get to write the content for the app, record and edit the multimedia elements and did some of the graphic design too.

The app was picked up by pretty much all Welsh media at the time including BBC Radio Wales. It was a great tool to promote the University and overall has close to 10,000 downloads across all platforms. I really enjoyed seeing my initial concept for an app going through all the stages of production to being talked about and used out in the world!

BBC Article
South Wales Argus Article

 

You can download the app free for Android and the iPhone / iPad.

A Recent project for the University of Wales, Newport

myNewport (A Staff/Student Intranet)

unipWe had previously been running two seperate internal resources for staff and students, this project was an opportunity to combine the two. One central Intranet platform is easier to manage, and allows all users to benefit from new functionality and developments.

As well as updating the technology behind the system we introduced a raft of new features including audience targeting, a bespoke CMS and self service forms. I did a lot
of the coding (c#) and design, as well as the project management using PRINCE2.

You can read an article I wrote on PRINCE2 here :

Using Sharepoint as a corporate website?

I’ve done a lot of development work using Sharepoint 2007 (MOSS) and some Intranet development using Sharepoint 2010. I’m not going to out right tell you that using Sharepoint is a bad idea, or even Sharepoint doesn’t work for a front facing corporate site. I’m going to explain some of the pros and cons that I’ve found and you can decide from there.

Firstly I would say Sharepoint in my opinion is good for building team collaboration sites, in which you share documents, calenders and other team related stuff. Setting up Workflows can be quick and easy using Sharepoint Designer to do basic tasks. I have setup some corporate Intranets using Sharepoint, and they were ok but not without issues.

Sharepoint is not really designed to be a CMS for public facing websites. The core of the problem is centred around authentication and permissions. Sharepoint is happy when all your users are logged in, and it can run webparts and features without problem. Obviously a public website needs to be accessed by anonymous users who won’t be logging in. Typically you’ll need to setup an admin version of the site where authors/editors log in, and forms based authentication (FBA) for the public side where everything is accessed against one preset account for anonymous visitors.  You can setup these different areas in Sharepoint’s Central Admin interface, using Alternate Access Mappings. Normally the admin site should run under SSL so the traffic is encrypted.

The Cons of using Sharepoint as a CMS.

– As you start to develop Webparts in c#, or utilise out of the box features to get things done, it’s generally fine on the admin site, but some features will not run on FBA due to bugs or design limitations. Any custom webparts you build will need to get more privileges using combinations of impersonation and altering Security settings in config files. Even to access a list or page library from a custom webpart won’t work without extra configuring and coding.

– You’ll need to develop a lot of custom Sharepoint Webparts to deliver additional features and to replace features which simply did not work well due to bugs or limited un-flexible features.  For example Page libraries can be exposed quickly and easily as RSS feeds in Sharepoint 2007 but the information put into the RSS feeds is quite fixed and rendered in a way that makes it unusable. To get over this I developed a .NET Controls to render more useful RSS feeds.

– Permissions and the security model. You can setup custom security groups, instead of the default 3 level groups. This feature would be really useful, but in our Publishing site using MOSS we found permissions using custom levels didn’t inherent down to sub sites. This renders the feature unusable in most scenarios. Sharepoint’s permissions aren’t that finely grained. Sometimes you’ll want to separate what users can do, but too many rights are lumped together into permission groups.

– Some aspects are black boxed, so are not accessible to developers (No hot fixing). It’s not like an open source CMS where you access every line and see what it’s doing. Sharepoint can be mysterious and behave in unexpected ways, sounds exciting but it’s not!

– Rendered mark-up was not W3C standards compliant. (Better in 2010). For example a lot of the navigation controls use Nested tables, or non standard attributes. You can rewrite things like menu controls from scratch, to make things more compliant and better for accessibility but then you’re sinking further and further into what I call Sharepoint Quicksand!

– Webpart development/deployment was more time-consuming than standard .NET Pages

– Numerous bizarre bugs often intermittently occurring in stable environments. The Reuseable content feature which worked fine with authenticated users would often cease to play ball on the front end FBA site.

– Sharepoint does a lot, it’s complex, it’s powerful with many different ways to get things done. But a platform this complex is prone to bugs, contradictions, and has more weaknesses. You’ll face a steeper learning curve to do anything really useful and there will be significant amounts of functionality you’ll never use but still litter the system.

– Webparts developed in one version of Sharepoint can’t be used directly on another version. For example I couldn’t just install a MOSS 2007 webpart for producing dynamic forms on a Sharepoint 2010 site. If you’d written something in .NET framework 2, it would still run in a framework 3.5 or higher .NET site.

Pros

– .NET developers will see familiar things, Sharepoint uses Master Pages for templating, Webparts can be written in C#.

– Workflows are useful, quick and dirty simple ones with Sharepoint Designer, or more powerful custom workflows built in Visual Studio

– There are plenty of Sharepoint / Microsoft skills out there, so finding developers to work with Sharepoint won’t be too bad.

– It’s reasonably mainstream, and there are many blogs, examples and tutorials about Sharepoint.

– It has a good set of built in webparts and features (when they work). Like the Content Query Webpart (CQWP) which you can use to display auto generated menus from tagged content through flexible filters.

– There are lots of free and cheap third party webparts or controls you can download to enhance Sharepoint. Telerik’s RAD Editor was much better than the default WYSIWYG editor. And Codeplex has loads of useful downloads.

– You can get a robust, feature rich, flexible CMS based site but it takes a lot of work.

– Custom lists, content types and page layouts are easy to get to grips with and webparts and webparts zones I still like.

Ok, remember the bit where I said I wasn’t going to tell you whether you should consider Sharepoint or not, I lied.

A lot of these points to be fair are levelled at MOSS 2007, and Sharepoint 2010 is an improvement, but generally I would be (personally speaking) reluctant to use Sharepoint again for a CMS.