1
Fork 0

correct spellings

This commit is contained in:
Jake Howard 2016-07-29 13:57:02 +01:00
parent 4f202e6742
commit c90205de14
Signed by: jake
GPG key ID: 57AFB45680EDD477
13 changed files with 96 additions and 39 deletions

57
.spelling Normal file
View file

@ -0,0 +1,57 @@
# markdown-spellcheck spelling configuration file
# Format - lines beginning # are comments
# global dictionary is at the start, file overrides afterwards
# one word per line, to define a file override use ' - filename'
# where filename is relative to this configuration file
_list
kickstart
olds
sitemap.xml
gittime
protonmail
hotmail
swiss
fastmail
rackspace
runbox
dabapps
qwerks
LanSchool
astrill
OpenVPN
config
openvpn-compatable
_link
pygame
easter
bsod-enabler
_enabler
dotfiles
owncloud
hipchat
jakesidsmith
facepalm
notsureif
wat
plugin
firefox
jetpack
javascript
jsfuckify
morese-code-decoder
morse-code
morse
centers
backends
wikipedia
iframe
querystring
jQuery
gists
lenovo
_title
collyer's
til
A.L.I.C.E
ethernet
everyones

View file

@ -59,8 +59,8 @@ lint:
$(ENV)/flake8 $(BASEDIR)/pelicanconf.py $(FLAKE8_IGNORE)
spellcheck:
$(NODE_BIN)/mdspell --en-gb -ranx theme/templates/**/*.*
$(NODE_BIN)/mdspell --en-gb -ranx content/**/*.*
$(NODE_BIN)/mdspell --en-gb -ranx theme/templates/**/*.* theme/templates/*.*
$(NODE_BIN)/mdspell --en-gb -ranx content/**/*.* content/*.*
upload: build

View file

@ -4,24 +4,24 @@ date: 2016-06-28
image: https://protonmail.com/images/main-banner.jpg
summary: Incredibly secure, easy to use, but are it's trade-offs worth it?
Throughout my life, i've had many different email providers, starting with hotmail almost 10 years ago. In more recent years, i've been focusing more on ways I can secure my emails, both from potential intruders, or governments. No, I may not have anything to hide, but that doesnt mean I don't want the information I to have to be accessable easily.
Throughout my life, I've had many different email providers, starting with hotmail almost 10 years ago. In more recent years, I've been focusing more on ways I can secure my emails, both from potential intruders, or governments. No, I may not have anything to hide, but that doesn't mean I don't want the information I to have to be accessible easily.
Originally I thought the best way to keep things secure, and out of the hands of any government body was to host it all myself. This came with a number of problems, mostly due to my lack of expperience running anything like this, which lead to problems with my spam filter not running, and any emails I did send ending up in peoples spam folders. It was after this I decided to look into hosted options, I'm happy to pay money to have someone else look after the email servers for me, even if that's at the cost of using another companies infrastructure.
Originally I thought the best way to keep things secure, and out of the hands of any government body was to host it all myself. This came with a number of problems, mostly due to my lack of experience running anything like this, which lead to problems with my spam filter not running, and any emails I did send ending up in peoples spam folders. It was after this I decided to look into hosted options, I'm happy to pay money to have someone else look after the email servers for me, even if that's at the cost of using another companies infrastructure.
After searching around for a while, I stumbled on a company called _ProtonMail_, who claimed to be the most secure email host ever. Reading into the technologies they use, adn watching one of their team members on a TED talk, I realised they weren't lying, their platform really was secure!
After searching around for a while, I stumbled on a company called _ProtonMail_, who claimed to be the most secure email host ever. Reading into the technologies they use, and watching one of their team members on a TED talk, I realised they weren't lying, their platform really was secure!
ProtonMail use a combination of open-source technologies, a closed-access platform, and swiss data-centers to protect emails better than anyone else! The only way you can access your emails is by using their custom apps for Android, iOS, and web. Whilst this is annoying, it does mean the system isnt accessable through conventional protocols such as IMAP and POP3, which would considerably lower the security. The web portal itself is entirely open-source, and highly encourages any contributions, which should help make the platform even more secure, and help pump out features fast.
ProtonMail use a combination of open-source technologies, a closed-access platform, and swiss data centers to protect emails better than anyone else! The only way you can access your emails is by using their custom apps for Android, iOS, and web. Whilst this is annoying, it does mean the system isn't accessible through conventional protocols such as IMAP and POP3, which would considerably lower the security. The web portal itself is entirely open-source, and highly encourages any contributions, which should help make the platform even more secure, and help pump out features fast.
In April 2016, I signed up to ProtonMails _Plus_ tier, and switched all my domains to use their servers as an email provider. The setup process itself was incredibly simple, it showed you every DNS record you needed to create, so all you had to do was copy-paste! It also showed you extra records you could add to aid the security of your emails, and protect against people sending out emails using your domain, including DKIM signatures, and SPF records.
In April 2016, I signed up to ProtonMail's _Plus_ tier, and switched all my domains to use their servers as an email provider. The setup process itself was incredibly simple, it showed you every DNS record you needed to create, so all you had to do was copy-paste! It also showed you extra records you could add to aid the security of your emails, and protect against people sending out emails using your domain, including DKIM signatures, and SPF records.
### The Problems
When I first started using ProtonMail, before I committed, I knew there were a lot of features missing, but I thought I wouldnt need these. Now my email traffic has increased, i'm starting to find myself needing / wanting these features more and more.
When I first started using ProtonMail, before I committed, I knew there were a lot of features missing, but I thought I wouldn't need these. Now my email traffic has increased, I'm starting to find myself needing / wanting these features more and more.
Now, 3 months on, i'm starting to get a little annoyed at ProtonMail, mainly at their lack of features. Yes the security is great, really great, but the fact I have to open a website and login every time I want to check my emails is a little tiring, and their mobile app, whilst fully functional and capable of the basics, has some bugs had glitches out sometimes.
Now, 3 months on, I'm starting to get a little annoyed at ProtonMail, mainly at their lack of features. Yes the security is great, really great, but the fact I have to open a website and login every time I want to check my emails is a little tiring, and their mobile app, whilst fully functional and capable of the basics, has some bugs had glitches out sometimes.
Another problem is the lack of basic features. Whilst the client does have labels, and _'+ aliases'_, both of which are great features for those like me that like to keep things organised. The platform is missing out on some rahter key features, like:
Another problem is the lack of basic features. Whilst the client does have labels, and _'+ aliases'_, both of which are great features for those like me that like to keep things organised. The platform is missing out on some other key features, like:
- Custom message filter (currently in beta)
- IMAP / POP3 support, for external clients
@ -34,7 +34,7 @@ These problems are taken for granted in most other mail platform, but because Pr
## _"Didn't you just waste your money?"_
Yes, this does mean I've paid for a service i'm technically no longer using. Which does annoy me, but considering it'll be used to help out the platform in the future, and I have every intention of switching back once it's got all the features I need, I can live with it.
Yes, this does mean I've paid for a service I'm technically no longer using. Which does annoy me, but considering it'll be used to help out the platform in the future, and I have every intention of switching back once it's got all the features I need, I can live with it.
## Next Steps
After looking around the internet for a suitable replacement, I settled on [FastMail](https://fastmail.com/?STKI=14665249). I've seen good things from RackSpace, OX and RunBox, but FastMail has all the features I need, with an easy-to-use interface, a cheap price tag, and a pretty decent security policy. For someone looking for a simple to use email provider, that's reasonably secure, and feature-rich, I can't recommend [FastMail](https://fastmail.com/?STKI=14665249) highly enough!

View file

@ -1,6 +1,6 @@
title: Student Server
slug: student-server
summary: The college needed a server, but didnt have any server admins
summary: The college needed a server, but didn't have any server admins
Back when I was in college, we needed a server for computing students to learn how to use FTP, and script on a server using python CGI and [PHP](http://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/#an-analogy), as well as possibly for some students coursework. Fortunately, the college already had one, running the IT students microsite for extra course information. The problem was that it was majorly out of date, and no one really new how to use it properly. It was up to me and my friend Alex to bring the server up to date, and get it ready for the students who needed it.

View file

@ -5,7 +5,7 @@ summary: Hacking is fun!
Personally, I dislike being limited by technology. If there's a system in place like a proxy filter, network restrictions, or even any remote control software, I just have to try and break through it or work around it. This was mostly the case at college.
Throughout my time there, I was able to break through many parts of their network, mostly the sections involving keeping students on task. The hardest part of this was doing it in such a way that it couldnt be traced back to me, just in case they didnt appreciate me _testing_ their systems. Whilst I don't condone doing this, it is certainly a lot of fun, and I learnt a whole lot through it. To this day, they still have no idea I did any of it, unless they're reading this, in which case, __Hi__!
Throughout my time there, I was able to break through many parts of their network, mostly the sections involving keeping students on task. The hardest part of this was doing it in such a way that it couldn't be traced back to me, just in case they didn't appreciate me _testing_ their systems. Whilst I don't condone doing this, it is certainly a lot of fun, and I learnt a whole lot through it. To this day, they still have no idea I did any of it, unless they're reading this, in which case, __Hi__!
<!--- make this dynamic at some point! -->
@ -13,4 +13,4 @@ Throughout my time there, I was able to break through many parts of their networ
## College Sheep
#### [LanSchool](/wall-of-sheep/LanSchool/)
The tool of choice of my college to monitor students usage of computers. Turns out it's not particulally robust!
The tool of choice of my college to monitor students usage of computers. Turns out it's not particularly robust!

View file

@ -3,14 +3,14 @@ template: projects
slug: astrill-extractor
repo: https://gist.github.com/RealOrangeOne/050da86871fb952ba7bfe97eece8555c
Astrill, my VPN of choice, allows you to export openvpn config files for all it's VPNs, allowing you to connect on platforms it doesnt provide clients for. The aur package `astrill` has started becoming really unstable on my machine, so I decided to switch it out for these VPN files, as gnome has excellent support for openvpn.
Astrill, my VPN of choice, allows you to export OpenVPN config files for all it's VPNs, allowing you to connect on platforms it doesn't provide clients for. The AUR package `astrill` has started becoming really unstable on my machine, so I decided to switch it out for these VPN files, as gnome has excellent support for OpenVPN.
The export step is really simple, you just login to the web portal, create an entry for your machine, and export the config files. Their tutorial for this can be found [here](http://wiki.astrill.com/index.php/Astrill_Setup_Manual:How_to_configure_OpenVPN_with_Network_Manager_on_Linux). The problem with this is that some applications wont accept the certificates embedded into the file like this. (Gnome does, but I only realised that whilst writing this). So I started writing a simple parser to extract the certificates from the config files, and saving them as seperate files.
The export step is really simple, you just login to the web portal, create an entry for your machine, and export the config files. Their tutorial for this can be found [here](http://wiki.astrill.com/index.php/Astrill_Setup_Manual:How_to_configure_OpenVPN_with_Network_Manager_on_Linux). The problem with this is that some applications wont accept the certificates embedded into the file like this. (Gnome does, but I only realised that whilst writing this). So I started writing a simple parser to extract the certificates from the config files, and saving them as separate files.
<script src="https://gist.github.com/RealOrangeOne/050da86871fb952ba7bfe97eece8555c.js"></script>
The above script will split out the files and save them into seperate directories for each config file. These files can then be imported and used in an openvpn-compatable application.
The above script will split out the files and save them into separate directories for each config file. These files can then be imported and used in an openvpn-compatable application.
### Is it even needed?
Certain network-manager packages actually supports importing `.ovpn` files directly, and sets everything up for you, including the files for the keys etc, without needing to extract them before. This does make my script useless to me, but hopefully someone will find it useful!

View file

@ -13,6 +13,6 @@ I use both my laptop and work machines almost every day, and want them to be set
## How I did it
Originally, I used my owncloud server to sync all my dotfiles between my computer, and then used symlinks to split out the relevant files into the relevant locations.
This worked brilliantly, config files were automatically synced as soon as I made a change. This was especially great for my `.bashrc` file! The main problem was with atom packages, I had to manually store what files were installed, then manually install them on the other machine from the saved file. This was made easier by `apm` allowing me to list them and automatically save them in a file, but it wasnt perfect.
This worked brilliantly, config files were automatically synced as soon as I made a change. This was especially great for my `.bashrc` file! The main problem was with atom packages, I had to manually store what files were installed, then manually install them on the other machine from the saved file. This was made easier by `apm` allowing me to list them and automatically save them in a file, but it wasn't perfect.
Eventually, after looking into possible solutions, I came across the [`Sync settings`](https://atom.io/packages/sync-settings) package, which seemed to be the answer to my prayers! It saved all my config data for atom into a gist, which I could then backup and restore too from within the application. It also warned me when my local data was out of date from the remote, and prompt me to downnload the updated data.
Eventually, after looking into possible solutions, I came across the [`Sync settings`](https://atom.io/packages/sync-settings) package, which seemed to be the answer to my prayers! It saved all my config data for atom into a gist, which I could then backup and restore too from within the application. It also warned me when my local data was out of date from the remote, and prompt me to download the updated data.

View file

@ -7,8 +7,8 @@ After starting my new job at DabApps, I was introduced to the world of [Hipchat]
Unfortunately, the emoticons on the other services we use, like [GitHub](https://github.com), were terrible in comparison. So it was after a discussion with [@JakeSidSmith](https://github.com/jakesidsmith) about him just using things like (facepalm), (notsureif), and (wat) in [Facebook messenger](https://www.messenger.com/) and hoping people understand what it means, that I decided to make 'Hipchat Emoticons for all', so people like him could use a much better set of emoticons.
The premis is very simple, whenever it sees a hipchat emoticon code, like (notsureif), it replaces it with an emoticon. If only writing the code could have been this simple! I started writing the plugin in firefox, using [Jetpack](https://wiki.mozilla.org/Jetpack), which uses Javascript. The initial stages of the code were very simple, but I encountered problems making sure that anything loaded after the page was loaded (such as a facebook message), be changed too.
The premiss is very simple, whenever it sees a hipchat emoticon code, like (notsureif), it replaces it with an emoticon. If only writing the code could have been this simple! I started writing the plugin in firefox, using [Jetpack](https://wiki.mozilla.org/Jetpack), which uses Javascript. The initial stages of the code were very simple, but I encountered problems making sure that anything loaded after the page was loaded (such as a Facebook message), be changed too.
Fortunately after many hours of testing, and changing the code, I finally got everything working perfectly, and in a way that made adding new sites incredibly easy! The code isn't the greatest in terms of performance, and there are some things that could have obviously been done better, but this was all done to help with a shared codebase between Chrome and Firefox, which don't play nice when it comes to extensions.
Currently the application is in very beta stages right now, only having tested partial support for github, but the code is all available on GitHub, if people have their own suggestions of improvements.
Currently the application is in very beta stages right now, only having tested partial support for GitHub, but the code is all available on GitHub, if people have their own suggestions of improvements.

View file

@ -2,7 +2,7 @@ title: Morse code decoder
template: projects
slug: morese-code-decoder
repo: https://gist.github.com/RealOrangeOne/6dc94875c93b787e5834
summmary: A JSON file to help decode morse-code
summary: A JSON file to help decode morse-code
It's not often someone will need to decode text into morse code (and visa-versa), but if I had something like this when I needed it, it would have saved me hours of time!
@ -12,7 +12,7 @@ I originally wrote this code for the [Student Robotics 2015](/robotics/2015/) En
In order to make it accessible for as many people in as many different languages as possible, the data is in JSON format. Just find a JSON library for your desired language, and it'll work perfectly!
The source of the library is on github as a gist. I recommend downloading the file to use yourself, however for testing you can use github's raw view as a hotlink.
The source of the library is on GitHub as a gist. I recommend downloading the file to use yourself, however for testing you can use GitHub's raw view as a hotlink.
<script src="https://gist.github.com/RealOrangeOne/6dc94875c93b787e5834.js"></script>

View file

@ -17,27 +17,27 @@ slug: 2015/robot
The entire chassis was made from sheets of plywood, which we laser cut in college, allowing us to be very precise in the design of the robot to make sure that all the pieces would fit together properly, making the chassis less likely to break.
The initial design was concieved by Ben, at kickstart, and was then refined over the coming weeks by me and the rest of the building team. This was made much easier from the use of the 3d model, that ben made, which helped us visualize any changes that were to be made, as well as work out strategy by seeing the measurements we had to work with.
The initial design was conceived by Ben, at kickstart, and was then refined over the coming weeks by me and the rest of the building team. This was made much easier from the use of the 3D model, that Ben made, which helped us visualize any changes that were to be made, as well as work out strategy by seeing the measurements we had to work with.
Once the build was completed, it was to a much higher design and quality than I could have ever imagined! It allowed us to forget about any shortcomings when it came to chassis, not having to compensate for weight distribution, or worry about the grip on the wheels.
<div class="image-panel" data-image="https://farm1.staticflickr.com/737/20984044320_ccbba155f9_o.gif"></div>
## Why call it 'A.L.I.C.E'?
## Why call it _A.L.I.C.E_?
The decision to name the robot 'Alice' was a decision made by the whole group!
Thats a lie, Ben suggested it and as no one had any better ideas and because he gets overruling vote on this, for some reason , it stuck.
That's a lie, Ben suggested it and as no one had any better ideas and because he gets overruling vote on this, for some reason , it stuck.
After this decisions was made, I decided to set out to find the cheesiest acronym we could for 'Alice', to make the name slightly more interesting, and not some random girls name pulled from thin air on the bus ride home from kickstart. There were a few rather good ideas, most of them coming from Sam:
- 'Automated Laser-cut Interactive Capturing Entity'</li>
- 'Abnormally Lame and Innacurate Control-less Engine'</li>
- 'Abnormally Lame and Inaccurate Control-less Engine'</li>
- 'Anti-Losing Immaculate Competitive Extravaganza'</li>
One idea was also suggested that we name the robot after the first sponsor we got, but as we didnt get one until after the team split, the other team took that name instead. In the end we decided to go with one that Sam initially suggested, so 'ALICE' officially stands for:
One idea was also suggested that we name the robot after the first sponsor we got, but as we didn't get one until after the team split, the other team took that name instead. In the end we decided to go with one that Sam initially suggested, so 'ALICE' officially stands for:
<h3 class="text-center">'Autonomous Logistics and Inevitable Collision Engine'</h3>

View file

@ -1,6 +1,6 @@
title: LanSchool
slug: lanschool
summary: The tool of choice of my college to monitor students usage of computers. Turns out it's not particulally robust!
slug: LanSchool
summary: The tool of choice of my college to monitor students usage of computers. Turns out it's not particularly robust!
LanSchool is the software of choice for my college to monitor and control computer usage. It allows teachers to see students screens, interact with them, and even block certain functionality like the internet and removable storage. My secondary school had a system much like this, but they weren't as active in using it.
@ -9,32 +9,32 @@ By far the worst feature of LanSchool was the screen blocking. At will, a teache
Within a few weeks of realising this tool, A friend of mine discovered how to get around it in a really primitive way: simply unplugging the ethernet. It's rather incredible this worked, but it had some problems:
- It took around 10 seconds after disconnect before the screen was restored, not a major problem, but still annoying.
- With all documents and programs bring stored on the network, you couldnt access any programs and documents you didn't already have open.
- With all documents and programs bring stored on the network, you couldn't access any programs and documents you didn't already have open.
- When you reconnect the cable, the screen returns to the state of everyone else.
- Your computer would suddenly dissapear from the list of machines on the teachers screen. If they were observant, they'd notice!
- Your computer would suddenly disappear from the list of machines on the teachers screen. If they were observant, they'd notice!
This solution worked, but wasnt ideal. Another solution was to log out (using the `ctrl + alt + delete` shortcut, which worked for some reason), and log in again. Our network was slow, so sometimes it wasnt worth the wait if your screens were only disabled for a short period of time. However the main problem with this was the fact it didnt always work, only around 30% of the time.
This solution worked, but wasn't ideal. Another solution was to log out (using the `ctrl + alt + delete` shortcut, which worked for some reason), and log in again. Our network was slow, so sometimes it wasn't worth the wait if your screens were only disabled for a short period of time. However the main problem with this was the fact it didn't always work, only around 30% of the time.
#### The best fix
The original idea for this came from someone else, but the implementation and refinement was mine, so I like to think it was mostly me.
Using an ubuntu live CD loaded onto a USB drive, we booted to ubuntu, and renamed the LanSchool executable. This meant the program wouldn't be able to run on start up, and so the client couldnt communicate with the teacher to lock our computers. __Result!__
Using an ubuntu live CD loaded onto a USB drive, we booted to ubuntu, and renamed the LanSchool executable. This meant the program wouldn't be able to run on start up, and so the client couldn't communicate with the teacher to lock our computers. __Result!__
This method worked almost perfectly, however had a few problems:
- It took at least 10 minutes to go from completely enabled, to completely disabled
- It worked for every user account on that computer, so it had to be done on each computer I used.
- A teacher would notice, as you would never show up on their list.
Fortunatley this last point is a non-issue, as usually the teachers put it down to the software messing up, not a student breaking the install. Another key problem with this is that it's rather obvious when everyones computer other than yours is disabled, as youre still actively using yours, whilst everyone else is actually listening!
Fortunately this last point is a non-issue, as usually the teachers put it down to the software messing up, not a student breaking the install. Another key problem with this is that it's rather obvious when everyones computer other than yours is disabled, as you're still actively using yours, whilst everyone else is actually listening!
#### The silver lining
Disabling the client on a machine also allowed for another feature that I had never thought of, but was by far the greatest bi-product of disabling LanSchool: __Teacher Mode!__
Due to me being able to have access to a teachers computer one evening, I was able to copy the executables for the teachers console onto a USB drive, and then run them later on my computer. Obviosuly I know most software won't work in this way, but i'm so glad this one did!
Due to me being able to have access to a teachers computer one evening, I was able to copy the executables for the teachers console onto a USB drive, and then run them later on my computer. Obviously I know most software won't work in this way, but I'm so glad this one did!
Now, I had access to everything the teacher did, which made lessons much more exciting. I could block peoples screens, send them messages, or even take complete control of their computer, it was great! Eventually a few more in my class knew [I had the power](), and I became a tool for trolling people, which was made extra simple by the fact I had access to all student computers in the college, not just my class. The only downside to this (something I didnt realise until I tried to prank a friend), is that it comes up with your name on the client computer if you try and take control of one that's not in your class, an annoying and dangereous feature.
Now, I had access to everything the teacher did, which made lessons much more exciting. I could block peoples screens, send them messages, or even take complete control of their computer, it was great! Eventually a few more in my class knew [I had the power](), and I became a tool for trolling people, which was made extra simple by the fact I had access to all student computers in the college, not just my class. The only downside to this (something I didn't realise until I tried to prank a friend), is that it comes up with your name on the client computer if you try and take control of one that's not in your class, an annoying and dangerous feature.
#### Phase 2

View file

@ -1,6 +1,6 @@
hide_list: true
Student Robotics is the the place where my development knowledge really started to grow. Thanks to the other people in my team teaching me. I had never done anything robotics related, and so when my computing teacher initially told us about it, I wasnt really interested. After I found out that my friend was also doing it, I signed up, and went along to the kickstart. From then on I was hooked, getting involved with all aspects of the development and design, as well as helping out other teams on the IRC room.
Student Robotics is the the place where my development knowledge really started to grow. Thanks to the other people in my team teaching me. I had never done anything robotics related, and so when my computing teacher initially told us about it, I wasn't really interested. After I found out that my friend was also doing it, I signed up, and went along to the kickstart. From then on I was hooked, getting involved with all aspects of the development and design, as well as helping out other teams on the IRC room.
## What is Student Robotics?
> Student Robotics is a volunteer organisation that runs an annual robotics competition for 16-18 year olds. It was originally founded by students from the University of Southampton in 2006, and now includes volunteers (“Blue Shirts”) from multiple other universities, including the University of Bristol and Grenoble INP. It primarily takes teams and volunteers from the UK, but also some from Germany and France.

View file

@ -1,3 +1,3 @@
I've always had a keen interest with security and privacy. Whether it's protecting my personal information, or needlessly encrypting things, security is very important to me. With an interest in keeping things secure, comes an interest in breaking through others security.
Whenever I start using a new tool, or piece of software, I almost instantly go to the security settings and check out what it supports. The same goes for making the software, i've been known to spend a lot of extra time working on the security aspect more than actual features.
Whenever I start using a new tool, or piece of software, I almost instantly go to the security settings and check out what it supports. The same goes for making the software, I've been known to spend a lot of extra time working on the security aspect more than actual features.