135 lines
31 KiB
HTML
135 lines
31 KiB
HTML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" xmlns:sa="/">
|
||
<head>
|
||
<link rel="stylesheet" id="navigationCss" href="/static/css/default.css" media="" type="text/css" />
|
||
<link rel="stylesheet" id="navigationCss" href="/static/js/jquery-ui/themes/base/jquery-ui.css" media="" type="text/css" />
|
||
<script type="text/javascript" src="/static/js/jquery-2.1.4.min.js"></script>
|
||
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.0/angular.js"></script>
|
||
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.0/angular-animate.js"></script>
|
||
<script type="text/javascript" src="/static/js/default.js"></script>
|
||
<link rel="icon" type="image/png" href="/static/images/favicon.png">
|
||
<title>Maidstone Hackspace</title>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||
</head>
|
||
<body>
|
||
<div id="headerstrip"><nav class="navstrip"><div class="left"><a id="mini_logo" href="/login"><img src="/static/images/hackspace.png" class="mini-logo"></a><span class="mini-logo-text">Maidstone Hackspace</span></div><div class="social"><div class="btn"><a href="https://twitter.com/share" class="twitter-share-button" data-via="MHackspace">Tweet</a></div><div class="btn"><div class="fb-share-button" data-href="http://maidstone-hackspace.org.uk/" data-layout="button_count"></div></div><div class="btn"><script type="IN/Share" data-url="http://maidstone-hackspace.org.uk/" data-counter="right"></script></div><div class="btn"><div size="standard" class="g-plusone" data-href="http://maidstone-hackspace.org.uk/" data-size="medium" data-annotation="bubble" count="true"></div></div></div></nav></div>
|
||
<nav id="leftNav" class="menu" >
|
||
<ul>
|
||
<li class="active mi0"><a href="/" >Home</a></li>
|
||
<li class="mi1"><a href="/chat" >Chat</a></li>
|
||
<li class="mi2"><a href="#mailing-list-signup" >Contact</a></li>
|
||
<li class="mi3"><a href="/login" >login</a></li>
|
||
</ul>
|
||
<div style="clear:both;"></div>
|
||
</nav>
|
||
<div class="page" >
|
||
<header class="pageHeader">
|
||
</header>
|
||
<section class="pageSection">
|
||
<div class="tile-right tile-image" ><img src="/static/images/tiles/malta-inn.jpg" alt="" />
|
||
|
||
<img src="/static/images/tiles/meetup-malta-inn-31-07-2005.jpg" alt="" />
|
||
</div><div class="banner-slide" ng-app="myApp" ng-controller="sliderController"><ul ng-switch on="currentSlide" ng-init="length=5;"><li class="slide" ng-switch-when="0"><img src="/static/images/banners/hackspace-banner.png" /></li><li class="slide" ng-switch-when="1"><a href="Audio board" ><img src="/static/images/banners/audio_board.jpg" /><div class="content">Audio board<br /></div></a></li><li class="slide" ng-switch-when="2"><img src="/static/images/banners/microscope.jpg" /><div class="content">Microscope<br /></div></li><li class="slide" ng-switch-when="3"><img src="/static/images/banners/object_avoiding_robot.jpg" /><div class="content">Object avoiding robot<br /></div></li><li class="slide" ng-switch-when="4"><a href="Rocket Camera" ><img src="/static/images/banners/rocket_camera.jpg" /><div class="content">Rocket Camera<br /></div></a></li><li style="clear:both;"></li></ul><div ng-click="prev()" title="Previous" role="button" class="slide-button left"><</div><div ng-click="next()" title="Next" role="button" class="slide-button right">></div></div><div class="clear"></div></section>
|
||
<section class="pageSection">
|
||
<h2>Introduction</h2></section>
|
||
<section class="pageSection">
|
||
<p>Hackspaces are a shared space where artists, designers, makers, hackers, programmers, tinkerers, professionals and hobbyists
|
||
can work on their projects, share knowledge and collaborate.We are in the process of developing Maidstone Hackspace. We're previous members of <span class="info" title="Innovation center medway prototype">(ICMP)</span> and looking to form a new space in the future.
|
||
At the moment, communication is via google groups, email, and the website. If you're at all intrested please join our <a href="#mailing-list-signup">mailing list</a>
|
||
and make yourself known!</p></section>
|
||
<section class="pageSection">
|
||
<h2>Proposed activities</h2><ul >
|
||
<li>Workshop on building a mobile application which can run on ios and android,potentially game oriented for a bit of fun, but open to suggestions.</li>
|
||
<li>Build an interactive splash screen to feature on this site.</li>
|
||
<li><a title="Suggest a new activity" href="https://groups.google.com/forum/#!forum/maidstone-hackspace" >Suggest a new activity</a>
|
||
</li>
|
||
</ul><div class="col"><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://www.matthewbeddow.co.uk/?p=479">Backlinks and SEO</a> By Mathew Beddow</h2></header><div class="tile-content"><p><p>Following a recent discussion I had with a university dive club member about a request to remove a back-link from a now dead forum from a travel insurance company, I thought I’d take this opportunity to delve into the mystical … <a href="http://www.matthewbeddow.co.uk/?p=479">Continue reading <span class="meta-nav">→</span></a></p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk//static/images//gtk/tut15-opengl-touch-app-01.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/gtk3/tutorial15.htm">GTK3 Simple Opengl application with gtk and Touch screen events</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Example application mixing gtk, opengl and touch, written as a demo but also as an opengl testing enviroment.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://www.matthewbeddow.co.uk/wp-content/uploads/2015/03/wp_ss_20150306_0001.jpg);background-size:contain;"></div><header class="tile-content"><h2><a href="http://www.matthewbeddow.co.uk/?p=484">When Microsoft calls a Vulnerability a “Feature”</a> By Mathew Beddow</h2></header><div class="tile-content"><p><p>Also known as “When responsible disclosure gets you no-where, make them listen by going public” but it didn’t have such a good ring to it. So, to the meat of the business. I have a Nokia Lumia 920 which a … <a href="http://www.matthewbeddow.co.uk/?p=484">Continue reading <span class="meta-nav">→</span></a></p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk//static/images//kivy/triangle.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/kivy/kivy-opengl-tut01.htm">Draw a simple triangle with Kivy</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Kivy example on setting up and displaying a basic triangle</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://www.matthewbeddow.co.uk/wp-content/uploads/2015/06/WP_20150614_007.jpg);background-size:contain;"></div><header class="tile-content"><h2><a href="http://www.matthewbeddow.co.uk/?p=498">I’ll try not to drone on…</a> By Mathew Beddow</h2></header><div class="tile-content"><p><span>It would seem that everyone and their dog are getting their own Quadcopter or quadrotor (often misreported in the media as a drone, but that’s another story). A recent build day ran by Reading Hackspace allowed me to jump into their … <a href="http://www.matthewbeddow.co.uk/?p=498">Continue reading <span class="meta-nav">→</span></a></span></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk//static/images//kivy/quad-texture.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/kivy/kivy-opengl-tut02.htm">Draw a textured square with Kivy</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Kivy example drawing a square and loading an image and applying to the quad as a simple texture.</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://waistcoatforensicator.blogspot.com/2015/06/recovering-deleted-tweets.html">Recovering Deleted Tweets </a> By Simon Ridley</h2></header><div class="tile-content"><p><p>Occasionally you may find that a notable Twitter profile may remove tweets, or be shut down before preservation can be initiated by the forensic examiner. Should this be the case, you may be required to refer to caching services such as Google Cache or Twicsy for example. I recently had need to evidence data found on Twicsy, however the web interface isn't exactly forensic friendly when it comes to how it displays the data. Twicsy.com is a Twitter picture search engine, which appears to duplicate the original textual data from a tweet containing an image, and stores this information on their own web server. The image from a tweet is simply referred to from the source, and if the tweet is deleted or the profile removed, you'll find the image won't exist any more. However the textual data does still remains on Twicsy's website despite the original tweet not existing. After discovering this I wrote a ruby script to extract each of the archived tweets and place it into a format which is readable. </p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk//static/images//kivy/cube-with-widgets.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/kivy/kivy-opengl-tut03.htm">Draw a cube mixing kivy widgets</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Kivy example on setting up a display and drawing a basic triangle</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://thearduinoguy.org/?p=236">8MHz Node Test</a> By Mike McRoberts</h2></header><div class="tile-content"><p><p>I’ve resurrected the Sensor Node project and I am experimenting in reducing the power consumption even further. This time I’ve removed the 3.3v voltage regulator from the circuit and I’ve […]</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://thearduinoguy.org/?p=251">Arduino Video Tutorials</a> By Mike McRoberts</h2></header><div class="tile-content"><p><p>Sorry for it being such a long time since my last post. I have been so busy with other non-Arduino related things that I’ve barely had time to update the […]</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://thearduinoguy.org/?p=253">The Arduino Acadamy – Lesson 1 – An Introduction to the Arduino</a> By Mike McRoberts</h2></header><div class="tile-content"><p><p>So, here is my first video for The Arduino Academy. This lesson will introduce you to the #Arduino, tell you what an Arduino is and what you can use it […]</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://thearduinoguy.org/?p=258">The Arduino Academy – Lesson 2 – Basic Outputs</a> By Mike McRoberts</h2></header><div class="tile-content"><p><p>So I present to you Lesson 2 from The Arduino Academy – Basic Outputs: Look out for further lessons: Lesson 3 – Basic Inputs (Digital) Lesson 4 – Basic Inputs […]</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://thearduinoguy.org/?p=263">Retro Ramblings</a> By Mike McRoberts</h2></header><div class="tile-content"><p><p>Crikey, nearly 3 weeks since my last post. Apologies if you’ve been waiting on part 3 of The Arduino Academy, but I’ve got slightly sidetracked lately with several things. Firstly, […]</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://thearduinoguy.org/wp-content/uploads/2015/10/20151019_185930-300x169.jpg);background-size:contain;"></div><header class="tile-content"><h2><a href="http://thearduinoguy.org/?p=268">FLiR Lepton Thermal Camera Module</a> By Mike McRoberts</h2></header><div class="tile-content"><p><p>My FLiR Lepton Thermal Camera Module has finally arrived from the USA. I managed to hook it up to my Raspberry Pi yesterday and successfully receive thermal images from it. The […]</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/login.htm">Create a new login greeter entry</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Populate a listbox with custom widgets, in this case an example file downloader.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/xcb_window_list.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/query_windows.htm">Retrieving window details</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Howto get a list of open windows and there titles.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/xcb_debugging.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/debugging_x.htm">Debugging with XCB</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Debugging XCB and catching errors and exploring the library.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk//static/images/thumbs/appaccomplished.jpg);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/reviews/appaccomplished.htm">Review of "App Accomplished"</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Short review of "App Accomplished"</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/xcb_window.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/window_creation.htm">Creating a simple window</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Example on creating new window and attaching them to the root window.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/xcb_window_keyboard_events.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/keyboard_events.htm">Handling X keyboard events</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Example demonstrating handling X keybaord events.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk//static/images/thumbs/effectivepython.jpg);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/reviews/effectivepython.htm">Review of "Effective Python"</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Short review of "Effective Python"</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/xcb_splash.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/png_image_loader.htm">XCB loading and displaying images</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Helper class which will load in a png and convert it ready for display in a X window.</p></p></div></div></div><div class="col"><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://thearduinoguy.org/wp-content/uploads/2014/11/Screen-Shot-2014-11-10-at-13.06.55.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://thearduinoguy.org/?p=134">A better Arduino IDE</a> By Mike McRoberts</h2></header><div class="tile-content"><p><p>As anyone who has used the Arduino IDE over time will tell you, this crappy piece of software has barely changed since the Arduino first surfaced. It has no autocompletion, […]</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://waistcoatforensicator.blogspot.com/2014/05/torrent-file-parser.html">Torrent File Parser</a> By Simon Ridley</h2></header><div class="tile-content"><p><p>This is a great script for obtaining the metainfo contained within torrent files. Due to the encoding used, keyword searches conducted during computer forensic analysis may not return any results when analyzing these types of files. This ruby script decodes the torrent, allowing an examiner to view the contained information, such as tracker list, file names, file sizes, directories, MD5 sum, etc. Credit goes to <a href="http://robwilliams.me/">Rob Williams</a> for creating this, all I did was alter the Bencoding Library, as I was unable to get the original to function. Hopefully you'll find this as useful as I did! </p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://thearduinoguy.org/wp-content/uploads/2014/12/atmel-300x225.jpg);background-size:contain;"></div><header class="tile-content"><h2><a href="http://thearduinoguy.org/?p=182">ATMega328P Power Saving Techniques</a> By Mike McRoberts</h2></header><div class="tile-content"><p><p>I was sent a link to to the following great article on power saving techniques for microprocessors and in particular the ATMEga328P which is the chip used in the Arduino. […]</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://waistcoatforensicator.blogspot.com/2014/05/twitter-profile-extraction-tool-api.html">Twitter Profile Extraction Tool API Update</a> By Simon Ridley</h2></header><div class="tile-content"><p><p>After a couple of requests from members on <a href="http://www.forensicfocus.com/">Forensic Focus</a>, I've updated this script so that profiles can be accessed / extracted via Twitter's API update 1.1. I had converted the original script into an executable which was available for download on SourceForge, however since the API now requires authentication, I don't like the idea of packaging my own API keys into this. All this means is that you will require your own API keys, which you can create at <a href="https://apps.twitter.com/app/new">Twitter's Application management page</a>. </p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://thearduinoguy.org/wp-content/uploads/2015/02/ESP8266-300x120.jpg);background-size:contain;"></div><header class="tile-content"><h2><a href="http://thearduinoguy.org/?p=194">Using an ESP8266 as a time source (Part 1)</a> By Mike McRoberts</h2></header><div class="tile-content"><p><p>So i’ve obtained some ESP8266 WiFi modules lately and have been having a play with them. If you’ve not heard of the ESP8266 they are tiny serial controlled WiFi modules […]</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://waistcoatforensicator.blogspot.com/2014/06/keyword-tracking-live-tweets.html">Keyword Tracking Live Tweets</a> By Simon Ridley</h2></header><div class="tile-content"><p><p>A little experiment script I cobbled together for live incident tracking over Twitter, very useful for identifying, and evidencing signs of racism or death threats towards others. If the scenario requires it, geo data can be included in the capture, along with tweet source which identifies how the tweet was made either via a mobile device or a web browser. Also quite handy if and when exhibits need to be seized, and you need to narrow down what device the tweets were made from. </p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://thearduinoguy.org/?p=217">Using an ESP8266 as a time source (Part 2)</a> By Mike McRoberts</h2></header><div class="tile-content"><p><p>Since my last attempt at using an ESP8266 to get the date and time from the internet I’ve tried out another module, this time with the NodeMCU firmware. This is […]</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://2.bp.blogspot.com/-aHZczqlDYSQ/VZg676jGgeI/AAAAAAAACIg/JD_XJlJBLUU/s72-c/2015-07-04_08.50.59.jpg);background-size:contain;"></div><header class="tile-content"><h2><a href="http://waistcoatforensicator.blogspot.com/2015/07/diy-3d-delta-printer-for-ceramic.html">DIY 3D Delta Printer for Ceramic - Introduction</a> By Simon Ridley</h2></header><div class="tile-content"><p> In October last year, I got the opportunity to build a <a href="http://reprap.org/">RepRap</a> Huxley pro 3D printer for a community crafts centre based in Ashford, Kent. The craft centre wanted a means to demonstrate to its hub of artists how to incorporate new technologies such as 3D printing into their studio work, to create never before seen creations. By building the Huxley it provided me the confidence to build my own 3D printer, which in a series of posts I'm going to discuss further. </p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk//static/images/thumbs/opengles3.jpeg);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/reviews/opengles3.htm">Review of OpenGL ES 3.0 programming guide</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Short review of "OpenGL ES 3.0 programming guide"</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk//static/images//kivy/multi-mesh.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/kivy/kivy-opengl-tut04.htm">Draw two cubes using Kivy with different shaders.</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Kivy example draw two cubes with different shaders and vertices so they can be moved seperately.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk//static/images//gtk/tut16-signals.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/gtk3/tutorial16.htm">GTK3 custom signals example</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Simple example on how to setup, connect to and trigger signals.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk//static/images//opengl/point-sprite-shader.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/opengl/pixel-shader-example.htm">Rendering textured pixels with OpenGL Example</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>OpenGL program that does pixel shading, OpenGL pixels with size and textures often used for particle effects.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk//static/images/thumbs/frommathmaticstogenericprogramming.jpeg);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/reviews/genericprogramming.htm">Review of "From Mathematics to Generic Programming"</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Short review of "From Mathematics to Generic Programming"</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/packaging.htm">Create your project repository</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Howto create a new project and push it to launchpad.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/synaptics.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/building.htm">Generating a debian package</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Using launchpad we will create a ppa which will automatically generate your package from the standard debian packaging files.</p></p></div></div><div class="tile"><div class="tile-img"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/properties_and_atoms.htm">Using properties and atoms</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>This example shows how to get properties and use atoms.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/xcb_extension_list.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/extensions.htm">Querying Extensions</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Query available extensions and checking for availability.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/xcb_extension_screen_sizes.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/screen_sizes.htm">Querying display information</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Example on detecting screen sizes and number of screens in a multi head setup.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/xcb_window_mouse_events.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/mouse_events.htm">Handling X mouse events</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Example demonstrating handling X mouse events.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/xorg.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/index.htm">X Desktop Tutorial.</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Using X build a desktop, learn to package and deploy it and create a login screen.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/xcb_sdir.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/sdir_utility.htm">XCB utility method for examing available methods</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>Simple extended dir function for inspecting xcb.</p></p></div></div><div class="tile"><div class="tile-img" style="background:center no-repeat url(http://digitaloctave.co.uk/static/images/x/xcb_window_list.png);background-size:contain;"></div><header class="tile-content"><h2><a href="http://digitaloctave.co.uk/pages/desktop_enviroment/grid_layout.htm">Class for generating a grid to position and size windows</a> By Oliver Marks</h2></header><div class="tile-content"><p><p>This is a helper class to split an area up into increasingly smaller areas.</p></p></div></div></div></section>
|
||
<footer class="pageFooter">
|
||
</footer>
|
||
</div>
|
||
|
||
<div id="footer"><div id="footertop"></div><div id="footerbottom"><div class="container"><div class="copyright">©2015 Maidstone Hackspace</div><div id="mailing-list-signup" class="google-groups-signup"><h3>Signup and make yourself known</h3><form class="block" name="signup" method="get" action="http://groups.google.com/group/maidstone-hackspace/boxsubscribe"><label for="groups-email">Email Address</label><input id="groups-email" name="email" class="required"/><button type="submit" />Subscribe</button><a href="http://groups.google.com/group/maidstone-hackspace">Browse Archives</a></form><div style="clear:both;"></div><div></div></div><div>
|
||
|
||
<div id="ajaxPopup" class="hide" ></div><script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>
|
||
|
||
<script><!--//--><![CDATA[//><!--!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');
|
||
//]]></script>
|
||
|
||
<script src="//platform.linkedin.com/in.js" type="text/javascript"> lang: en_US</script>
|
||
|
||
<div id="fb-root"></div><script><!--//--><![CDATA[//><!--
|
||
//facebook share
|
||
(function(d, s, id) {var js, fjs = d.getElementsByTagName(s)[0];if (d.getElementById(id)) return;js = d.createElement(s); js.id = id;js.src = "//connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v2.3";fjs.parentNode.insertBefore(js, fjs);}(document, 'script', 'facebook-jssdk'));
|
||
//]]></script><script type="text/javascript" ><!--//--><![CDATA[//><!--
|
||
|
||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||
|
||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||
|
||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||
|
||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||
|
||
|
||
ga('create', 'UA-63373181-1', 'maidstone-hackspace.org.uk');
|
||
|
||
ga('send', 'pageview');
|
||
|
||
|
||
$(document).ready(function(){
|
||
$('#mini_logo').on("click", function(e){
|
||
e.preventDefault();
|
||
$('#member_navigation').toggle();
|
||
});
|
||
});
|
||
|
||
|
||
var app = angular.module('myApp', ['ngAnimate']);
|
||
|
||
app.controller('sliderController', function($scope, $interval) {
|
||
$scope.currentSlide = 0;
|
||
$scope.autoSlide = true;
|
||
//$scope.length = 0;
|
||
|
||
$scope.next = function() {
|
||
$scope.autoSlide=false;
|
||
if ($scope.currentSlide < $scope.length - 1){
|
||
$scope.currentSlide += 1;
|
||
}else{
|
||
$scope.currentSlide = 0;
|
||
};
|
||
}
|
||
|
||
$scope.prev = function() {
|
||
$scope.autoSlide=false;
|
||
if ($scope.currentSlide > 0){
|
||
$scope.currentSlide -= 1;
|
||
}else{
|
||
$scope.currentSlide = $scope.length - 1;
|
||
}
|
||
}
|
||
|
||
$scope.isCurrentSlideIndex = function (index) {
|
||
return $scope.currentSlide === index;
|
||
};
|
||
|
||
$scope.loopSlides = function (index) {
|
||
if ($scope.autoSlide==false){return false;}
|
||
if ($scope.currentSlide < $scope.length - 1){
|
||
$scope.currentSlide += 1;
|
||
}else{
|
||
$scope.currentSlide = 0;
|
||
}
|
||
};
|
||
|
||
$interval(function(){$scope.loopSlides();}, 5000);
|
||
|
||
});
|
||
|
||
//]]>
|
||
</script>
|
||
|
||
</body>
|
||
</html>
|
||
|