Last Tuesday I was given the fantastic oppertunity to speak at the Microsoft TechDays Online event, talking about the Vertx project that I work on for VISR. It’s certainly not my first Microsoft Event, but it’s the first in which I’ve found myself in a speaking position. I met up with some fantastic people, who work with MR and AI for Microsoft. The event was great fun, and I’d like to thank those involved in getting me there!
Tomorrow I’ve been given the chance to talk at Microsoft’s TechDays Online as part of London Tech Week. You can find the info and itinerary here if you’re interested. I’ll be talking on Mixed Reality and the role it played in building Vertx!
It’s been a while since I posted anything of note here, so I thought I’d give an update on what I’ve been up to. Aside from exams and coursework, I’ve been working to bring the VISR Summer Camp to life, and studying to further my Microsoft qualifications. We’ve added a bunch of hardware to our infrastructure, including a 10Gbps backbone network and a HP C7000 Blade system, which has been keeping me occupied!
I’ve previously completed the Installation, Storage and Compute with Windows Server 2016 to achieve my MCP (Microsoft Certified Professional), and I’m looking to take it further. I’m working to complete the other two exams, to complete the MCSA in Windows Server 2016, and as such I’ve been brushing up on my Identity with Windows Server. This is the third exam of the set, skipping over the Networking exam. I’ve done this as my Active Directory skills are much better than my Networking ones at the moment, so I figured I’d get the easier exam out of the way first.
I’m in the final stages of exam prep now, running through the practice exams and getting ready for testing, running through labs, and generally brushing up my knowledge.
If anyone was considering completing a Microsoft certification, I’d strongly recommend them, especially if you’re a student. The exam is particularly cheap if you’re a student, at just £65. They’re a valuable cert to have, and any Microsoft Partner needs certified employees to maintain their ratings!
I’ll be back soon with some more updates on what I’m up to. If you’re curious about anything, let me know and I’ll see if I can write something up. I’m hoping to write up some more about the work I’ve been doing recently, but avoiding the NDA barrier can be difficult! See you all soon!
I’ve had quite a few students tell me that they’d like to use a cloud platform, but they’re complex, hard to get started with, or expensive. I agree they can be quite confusing to a new user, but I’ve set out to make a simple ‘Getting Started’ guide for Microsoft Azure.
I’ve worked with the Azure platform for a couple of years now. As such, I’m starting to get an idea of what all the buttons do, and where all the settings are. However, Azure is a constantly evolving platform, and by the time you read this, it is very possible options have moved. Take these instructions as a guide, and maybe a search engine can help you find the rest.
We’ll start with how to get signed up for an Azure subscription as a Student. Azure has several layers of privilege behind its billing system. The main thing to know is every resource you create (VMs, App Services etc) is linked to a Subscription. Subscriptions have payment details linked to them, and determine how much you pay. If you use Azure in a professional capacity, you may use a Subscription setup by a CSP (Cloud Solution Provider) or some other entity. For our purposes, we’ll be setting up our own Imagine Subscription (Mine is called Dreamspark, yours may well be different too. As long as it’s not Pay-As-You-Go or Free Trial, you should be OK).
If you’re not a Student, or your School or University doesn’t have a partnership with Microsft (This is rare but it happens), you can sign up using the Free Trial here. Microsoft will give you $200 (at time of writing) to play with. You can still use all of the free services, but if you’re not careful, you might end up paying for Standard Resources! Student subscriptions have a payment cap of £0 to stop them accidentally spending money!
Signing Up for Microsoft Imagine
First things first, you need to sign up for Microsoft Imagine, the Microsoft Student program. Imagine gives you access to a whole range of Microsoft services, and it’s worth having a browse around to see what’s available This will give you a link to use to sign up for Azure. If you wish to keep using your Imagine account, you’ll need to re-verify your Student status once a year. If you have done this already, you can skip ahead, otherwise read on to find out how to sign up.
- Head over to Microsoft Imagine
- Sign In in the top right corner (If you haven’t already) and click Imagine Account
- Next, you’ll need to verify your Student status using the pane on the left. If you’ve already done this, no need to do the next step.
- Select how you’d like to verify your Student status. This will vary based on your institution (I used my Student email address)
- Finally, complete your verification (In my case, using the email from Microsoft)
Get your link to the Azure Sign up
Now we’ll get signed up for Azure using our Student status. As of writing, this link will get you $100 of credit, and access to a bunch of Always Free and Free for 12 Month services.
- Head to this Microsoft Imagine page
- Click the ‘Register Now’ button. If you don’t see it, you may not be signed in, or you may not have verified your Student status
- You will then be redirected to Azure to complete the process.
- Complete the Identity Verification presented
- Then. complete the Card Verification. If you use any chargeable resources, this is the card they will be charged to!
- Finally, complete the Agreement
- You should then be left in the Azure dashboard
Feel free to explore the Azure dashboard and the resources available. Be aware that if you create any, they may cost money, and be charged to your card.
Over the coming weeks, I’ll be writing a few guides for projects you can do to get started on Azure. These will only use Free resources, so you can try them out too!
How’d it go? Has anything changed? Ran into issues? Got an idea for a project you want to build in Azure?
Leave me a comment, or Contact Me!
I’ve started a project this week called ImgBot. He’s a little Discord bot that uses the Vision API from Azure to recognise images posted to our HullCSS Discord server. As of now, he’s not super clever, only using the basic image APIs to gather data about a given image, but in the coming months I’m hoping to expand into a full Custom Vision model, for more advanced recognition.
For some idea of how it works, I’ve included a screenshot of the current version. In future, I’m hoping to allow users to give the bot feedback, to improve the model.
It’s also possible to get more advanced information from the bot, having it return the full JSON object representing the image.
I might look to Open Source this project later down the line, once the code is cleaned and organised. It’s currently fully functional however a little messy.
Let me know what you think and how you think I could improve the bot. Interested in testing it out? Drop me a message!
This week, I presented a lecture on Cyber Security for HullCSS. It covered Personal security, securing Applications you build, and organisation security. This was part of the HullCSS lecture series.
I covered three main topics, Personal Security, Developing Secure Solutions, and Organisational Security. The overall presentation is highly top level and basic. It covers common vulnerabilities and issues, but doesn’t go into too much depth as to how to protect and mitigate.
Personal Security focuses on the topic of using Password Managers, Two Factor authentication and other practises to develop good habits, and keep your online activity secure.
Secure Solutions covers the top vulnerabilities in applications, and how to mitigate them. It also covers how to spot vulnerabilities and encourage developers to build good habits.
Organisation security covers possible flaws where staff may expose information. It suggests some ideas to reduce the chance of this happening.
If you want to check out the slides from the event, you can find them below. If you’d like a full copy of the presentation (Available as a Keynote or PowerPoint) including notes, let me know. If you’d like to use this in your own presentation, please ask first.
Yesterday (1st March 2018), a number of HullCSS students got together to compete in Google’s HashCode competition. Everyone managed to submit a solution and gain points, and great fun was had by all.
HullCSS (The Hull Computer Science Society) ran a HashCode Hub in the Fenner SuperLab, where teams from all over the University came together to compete. It was the first time HashCode was run at the University of Hull, and all students were welcome.
All teams managed to submit a working solution, with the lowest point total being 10 Million, and the highest being 45 Million. All were impressive solutions, with each taking a different approach to solving the problem. Everyone relished the challenge, and it was interesting to see all skill levels working together.
All teams were eagerly watching the scoreboard throughout the event. Everyone wanted to make it above the top 1000 teams (top 25%).
My team consisted of Josh Taylor, Alexander Rossa, and myself, and was named Gravity Gun. We kicked off at 5.45pm with the release of the problem (which you can find here), and got to work planning out our algorithm.
We decided to take a Supervisor/Worker approach, with our main program acting as a coordinator of rides, and the cars doing much of the route finding/calculation themselves.
A basic set of properties were given to the car, to allow it to know about itself, such as its position, the rides it has completed, and the current global step it is on. This allows the supervisor to ask the car how long it will take to complete a given ride. The car is capable of calculating at what points it will pick up the customer, and arrive at the destination.
The supervisor knows more generalised information about the problem, such as the size of the grid, the list of cars and rides to complete, and the number of steps in which the rides have to be completed. It prioritised the list of rides, then asks each car how long it will take to complete the ride. In this version the prioritisation is very basic, and is only ordered by the end step in ascending order. It then gathers the results, and immediately removes any result that will complete after the maximum finish step of the ride. If the ride won’t complete the ride in time, we don’t even want to attempt it, as we could be using this time to get more points.
Next, it will check to see if any of the cars can achieve the bonus points. If they can, it will pick one of these cars, otherwise it will pick any car. It will then pick the car that reported the least number of steps to complete the job. This provides a fairly optimal path for completing rides (though clearly not the best!).
This model is fairly good, achieving 45 million points, though not without its faults. The top team managed to achieve over 49 million points. Given more time (there was a fair amount of time finding and fixing silly logic errors), we’d look to improve the prioritisation algorithm, looking at balancing the choice of going on a long journey, vs doing multiple short ones.
The competition was great fun, and I’ll certainly look to do it again next year. I’d encourage any student who wants experience with a real world, complex programming problem to compete! It offers something drastically different from a University module, and it can be really rewarding to build a working solution. As a student, the challenge was really engaging, but not too difficult as to be unsolvable.
I’ll definitely be encouraging HullCSS to run the event again next year. If you’re in Hull and want to get involved, let me know. If there is enough interest, it may be that the Hub is opened up to the whole city!
Want to know more about HashCode or get involved? You can find some info here:
Want to see my solution? Check it out on GitHub! (We were really tired, and were rushing when we wrote this, apologies in advance!)
Why not check out my other projects?
I presented a talk last week for members of the Hull Computer Science Society (HullCSS) titled ‘How to get a free Amazon Echo’. In the talk, I discussed the basics of what Alexa is and how skills work. I then gave a basic introduction on how students can get involved in developing skills for them. We covered topics such as how Alexa handles Natural Language, how to use AWS to handle data given to your skills, and the different types of Skills you can develop for Alexa.
If you’re considering building a Skill, and you’re a member of HullCSS, get in touch and I might be able to lend you an Echo Dot to test it out. If you’re getting to the final stages of your build, we can help you test it out. There’s a wealth of resources online if you need them!
If you attended the course, or you’re curious and want to get started, you can find the PowerPoint linked below. It contains most of the information given, either on slides or in the notes. I designed this talk to be a beginners introduction to Alexa. You can find more resources online, from Amazon and other bloggers.