Welcome
I am part of Dvbris.com building web apps with React and Node.js, and mobile apps with React Native. I also build command line applications and games in Node.js, Python and C (as well as dabbling in Haskell and other esoteric languages). I am currently a mobile software engineer at Mettle and NatWest Boxed (previously at British Telecom).
Contact me at mail@geraintwhite.co.uk or visit Dvbris.com.
I generally work as part of a two person team with Olls, writing in a variety of languages including HTML, JavaScript, PHP, Node.js and Python. Head over to Dvbris.com to see our projects. All our work is open source and available on our Github page.
I have been installing Node.js modules from npm for a long time to use with the Grunt build system. I decided to publish some of my own modules for other people to use and for ease of access in my other projects. Below are the modules I have published to npm:
Recently I obtained a Pebble Smartwatch. I was keen to get into app development for it and, with my JavaScript background, the best place to start was PebbleJS.
For my first app I decided to create a monitoring dashboard to keep track of my servers. It currently has the following features:
While developing this app I used the CloudPebble IDE which has amazing integration with the Pebble Android App allowing me to run my app on my watch from the web browser with access to the logs. It also has a Pebble emulator if you don't have access to a watch.
I intend to add additional features in the future when I have a need to monitor other information about my servers.
After building Pebble Info I wanted to get into the Pebble C SDK. I decided to follow the Pebble SDK Getting Started guide to help me learn to build a watchface.
I took the Pebble SDK example Just A Bit as a starting point and modified how the bits are displayed. I currently have the following features in the watchface:
- Two rows of bits (big-endian) - hours and minutes
- Number of hours bits is 4 for 12 hour mode and 5 for 24 hour mode
- Date displayed below binary time
- Weather displayed for current location
- Pebble battery percentage
- Vibration when watch connects/disconnects from Blutooth
I wrote this app in the CloudPebble IDE because of the ease of installing the app on my watch. However I have also run apps from the SDK installed on my dev machine.
Pebble Binary is available to download on the Pebble Appstore.
To improve my Python skills I developed a game for the terminal with Olls. Pycraft is a text based game inspired by Minecraft. It is quite advanced so far, with the following features:
- Random terrain generation with ores, hills and trees
- Auto-saving world and multiple save support
- Chunk saving to improve performance
- Breaking and placing blocks
- Inventory management
- Custom world options
- Crafting system
- WIP multiplayer support
We plan on taking the project further, improving multiplayer support and implementing other block types. Download the latest version here and try it out. It runs best on UNIX with Python 3 but will also work on Windows CMD.
With the same name as our web development site, this may be confusing. This site is about my family's narrowboat Dvbris. It contains a history of work done on the boat and holidays enjoyed.
The reason for the same name is that Olls and I did a lot of our early programming and development on the boat and it was a big part of our lives.
The site features a fully responsive navigation menu with fluid animations and touch friendliness which can be found on CodePen. It also features the new responsive CSS technology flexbox which allows the layout to dynamically change depending on the screen size.
I maintained the website of Hadleigh Dolphins Swimming Club. I used to be a member of the club and was also a teacher there, taking over the role of the webmaster when the previous maintainer had too little time. I transferred the site from the old CMS to WordPress and rehosted it on my server.