StayCation2023

TL;DR I’m taking 2 weeks off my Synopsys work to work on all those side projects I promised I would, either to myself or to others. We’ve all got a box somewhere of either AliExpress / PiMoroni / PiHut boards and a number of repos and half started projects that you promised that you’d be able to work in playing with in evenings or weekends, but you keep finding yourself doing stupid things like “spending time with family/friends”, “working out”, “spending time with / trying to find your significant other”, or “eating” or “sleeping” or other ridiculous indulgences. ...

April 1, 2023 · Andrew Bolster

Git Split Repository With Commit History

Thesis submitted, Viva cleared (with minor corrections) but this post isn’t about all that… Simple one; how do you go from one monolithic project repository to multiple respositories without losing all that tasty tasty commit history? #! /bin/zsh # # git_split.sh Current_Repo username new_repo {list of files/folders you want to keep} # Copyright (C) 2016 bolster <[email protected]> # # Distributed under terms of the MIT license. # BASEDIR=$1 INITDIR=`pwd` NEWREPO="[email protected]:$2/$3.git" shift 3 FILTER_ARGS=$@ TMPDIR=`mktemp -d -t ${BASEDIR}_XXXXXXXXX` echo $BASEDIR $TMPDIR $FILTER_ARGS cp -ra $BASEDIR/. $TMPDIR cd $TMPDIR git filter-branch --index-filter "git rm --cached -qr --ignore-unmatch -- . && git reset -q \$GIT_COMMIT -- $FILTER_ARGS" --prune-empty -- --all && git repack -a -d -f --depth=250 --window=250 && git remote set-url origin $NEWREPO && git gc && git push -u origin master ls -latrh cd $INITDIR rm -rf $TMPDIR YMMV, IANAGG, No refunds, Safety not guaranteed ...

October 17, 2016 · Andrew Bolster

FIX: CUDA on Debian Jessie

Hopefully a super quick one (while I’m procrastinating from procrastinating). Debian Jessie is a lovely operating system until you try and do anything with it. Lots of Package deprecations etc etc etc. Anyway, I’ve got a history with GPU stuff and I’ve been playing with integrating it into some of my research, but in a bout of insanity I decided while I’m over in Liverpool (for another 4 hours) to wipe my old workstation and bring it over from Ubuntu 15.04 to Jessie (which I’ve been using on my main laptop for a while now). ...

April 15, 2016 · Andrew Bolster

Python + irclib for IRC Status Updates

IRC, Python, Ubuntu linux. Simples! Same as by Twitter post, but for IRC. Biggest problem with this one was working out that the IRC server needs to be kept alive with the irclib.IRC.process_once() command. This is wrapped in the while loop that assumes that there is other stuff going on for which you are waiting on a condition to be satisfied, but could easily be ignored if one is just sending out one message. Also, the PRIVMSG command can be used to broadcast to a channel, as is used here, or, as the name suggests, to communicate with a specific user. ...

April 10, 2012 · Andrew Bolster

LU Decomposition in C (and under CUDA)

As part of any major project, it occasionally happens that you assume something is a ‘solved problem’ when its really not. In my case it was solving small linear systems, of the form Ax=B, where A is an nxn matrix, B is a n vector. This is a problem that’s been solved in libraries such as LAPACK, LINPACK, BLAS, etc etc. The issue appears when you’re trying to do this stuff within a specific hardware environment (CUDA), and you cannot call host functions from the device, and the cuBLAS libraries cater only to large matrices processed in parallel ...

April 18, 2011 · Andrew Bolster

CUDA Compute 20 Error and other issues

There’s a quirk of using older CUDA drivers is that the latest NVIDIA SDK code examples are not backward compatible, i.e compiling the 3.0 SDK against the 2.3 toolkit (that I’ve spent the last day doing) is a fools errand (Thanks very much to @thebaron on #cuda on freenode and tkerwin on StackOverflow.) Basically, the 3.x drivers reclassify newer cards based on the; previously, the ‘compute’ value (a measure of OpenCL adherence) would max out at 1.3, but now the range is extended up to 2.0, but the 2.3 toolkit does not recognise this value, so craps out. ...

April 14, 2011 · Andrew Bolster

Bolsters Code-Related Rants (An ongoing collection)

Logging functions being called with just a variable and no comment as to what the hell it is logging has functions more than logging.info, use them! Debug = useful information if something breaks but isn’t interesting during normal operation info = useful and generally interesting information warn = something went wrong, indicating something should probably be refactored / fixed,_ but the system could recover from it._ error = oh dear jesus fuck the entire site evaporated into a swarm of zombie locusts, I better put something in the error log. ...

February 12, 2011 · Andrew Bolster

Stuff I've found interesting in the past month - 23/10/2010

The Trashmen : Surfin’ Bird ( 1963 ) Skyline - Trailer 2 (2010) Gameblurb firstTEN-Fallout: New Vegas Introduction And So You Code Cat vs Printer - The Translation Really: New Windows Phone Ad Dub War 5th Birthday w/ Mala & Skream

October 23, 2010 · Andrew Bolster

Hackathon

On Saturday the 23rd October, the Hackers invade The Space! In association with QUESTS, Dragonslayers, and IETNI, HackerspaceBelfast will be running a series of events over 24 hours of software, network, and hardware hackery goodness, as well as screening hacker movies, DIY repair, and maybe, just maybe, how to build a laser. Running parallel to Dragonslayers’ 24 hour gaming event, which will incorporate console, PC, and tabletop games, attendees will be able to both play and make games to their hearts content. ...

October 14, 2010 · Andrew Bolster

News from the Belfast Hackerspace

So we’re only a few weeks into developing this idea, and first I’m going to give some credit where credit’s due; the people that I’m working with this have been brilliant, I want to give special thanks (in no particular order) to Ryan Grieve (@thegrieve), David Kane, Ben Harrison, Martin Gilchrist (@Gilchrist_LLP), Jonny Milliken, Dan Reid, and Chris Murray (@kris18890). Anywhere, where are we now? Currently we’re trying to secure storage space from QUBSU, as well as negotiating using The Space as an exhibition area, working with Digital Circle to come to some partnership agreement, with two major event ideas; ...

September 7, 2010 · Andrew Bolster