iOSConf 2017

iOSCon 2017

iOSCon is a 2 conference in London for people interested in iOS development and the Swift programming language.  I got the chance to attend with a few people from Digital Products who work on our apps like MyO2, O2 Drive and Priority.   I was rather looking forward to going as I have had my feet out of the iOS development circle for a while.  Working in the Lab requires you to jump around from technology to technology, each project could be written in a completely different programming language, tool or involve no coding at tall.

The conference covered things like:

  • New design patterns / ways to architect your app (VIPER, VIP and Clean to Flux, Redux and Reactive, POP)
  • Better ways to do API calls(Protocol Buffers and GraphQL) ,
  • How to get started in functional reactive programming,
  • Better ways to do Test Driven Development (some people call it Test Driven Design) by using Swift Playgrounds.
  • A few talks on accessibility and how to debug it.

What was interesting about this conference compared to others was the focus on behind the scenes stuff.  Previous conferences I had attended featured a lot of talks on UI, user experience, building custom controls etc.  This conference focused on making your code more stable, structured and easier to test.

You can find most of the talks here for free: https://skillsmatter.com/conferences/8180-ioscon-2017-the-conference-for-ios-and-swift-developers?tc=260f81#skillscasts

Here are 2 talks I really enjoyed:

It’s about time by Daniel Steinberg

This was a rather hard hitting talk about striking the right balance between work and home life.  He focuses on things like, either work or relax, don’t try to mix them, don’t go home and think of work. He tries to get you to focus on why you’re doing something, not the what your doing.  He also covered planning your day better and how interruptions cost you.  Every time someone bothers you for a minute, it takes 23 minutes to recover, even if it’s you who caused the interruption.

If you’re interested in watching the talk, check the link below, warning it may make you rethink things a bit.

https://skillsmatter.com/skillscasts/9447-keynote-it-s-about-time#video

The second talk I really enjoyed was

Natural Swift: write Swift the way it was meant to be written by Paul Hudson

The talk focuses on 3 topics which together can really help you improve your code.  The first is POP (Protocol oriented Programming), the second is Functional Programming which focused on the map, flatmap, filter and reduce commands.  These really impressed me because they can do in 1 line of code, what I would usually do in 5.  The last topic he covered was value types,  ObjectiveC is very different to Swift and you need to know what is a value type and what’s a reference type.

Sadly this talk was not filmed by Skillscast however you can download it for free from https://gumroad.com/l/natural-swift

This weeks update : It’s a lie : Metabase, more VEX and some data science!

So, let’s get the lie out of the way, this week’s update could cover more or less than a week!  It is whatever I am thinking of at the time, that may or may not be happening.  So apologies for that bombshell.

Software

So, at work (O2’s Innovation Lab) I am currently learning data science stuff, for anyone who knows me, this is an extremely hard task as I have the focus of hamster on Redbull.  I am usually doing more than 1 thing (usually 5) and so it can be a struggle to learn a new skill, let alone one as difficult as data science.  This week, I would say I am starting to get somewhere.  I been using different classifiers across my data, checked its score and then looked at the confusion matrix.  What that told me was that my data sucked badly, however, the upside was I could prove that my data was terrible.

Another thing I am doing at work around data (oh look at my focus) needed me to take some data and put a GUI over the top for people to be able to easy “ask the data questions”, I found a really cool free tool called Metabase which worked really nicely.  All I needed to do was take an MS Access DB (oh boy who uses MS Access), convert it to CSV, and chuck it in a Postgres DB.  Would have taken 5 mins on a PC, a Mac took a little bit longer!

Robots

So what’s new on the robot front this week? well VEX Worlds is in less than 25 days and the software is erm…. still in development.  The EDR Tank should be on way to the US, so I made a mini version of it so that I can carry on with the development.  I have written some safety features into the software so that I don’t mow down innocent kids, mouthy kids, will, of course, run over!  The nex thing I need to do is finish the bridge between the VEX Cortex and the ROS software

ROS

I have a new friend on Facebook, (whoop whoop) who has been helping me with the ROS stuff, it’s useful to have a sounding board on learning new stuff, especially something as complex as ROS.  I have a fear that the VEX Tank may not work too well with all the people moving about.  Slam and autonomous driving works (very simple form) by identifying features in the environment to try and locate itself. when you have no real features (e.g a long corridor) or lots of things changing (e.g people moving about), it can get very confused.  I am sure robotics engineers have a good solution to this, but being a beginner and using Hector Slam for the first time,  I am not holding my breath.  My mini raspberry Pi / LEGO version got confused if I farted near it, let alone 10,000 kids running around!

Ending Notes

I started a statistics course as its the precursor to the Udacity Machine Learning Course.

I finished a Sentiment analysis course, pretty interesting, showed how to work out if a review to a film was positive or negative.

I watched Logan, was very good and rather violent and definitely not for the kids

I watched Kong, was pretty good but preferred the previous one, which to be fair is nothing like the new one.

I started printing the Inmoov project 🙂 THE BEST 3D Printed project in the world!

Robot making schoolgirls set for world championships

Nothing made me happier to see a BBC article about these 2 school girls.  They have qualified to go to VEX Worlds next month which is held in the US to compete against 500 other teams from all over the world.

I have been lucky enough to meet these two (aged 8 and 9) a few times when I have been a VEX Judge.   They are extremely talented bright kids for their age.  Each time I have met them, they have walked away with an award!

For the full details please check out http://www.bbc.co.uk/news/uk-england-beds-bucks-herts-39410855

New Toy : Shapeoko 2 CNC Machine

It’s my birthday very soon and so I decided that the main robotic making tool I was missing was a CNC machine 🙂  A friend of mine had a Shapeoko 2 which he no longer needed and so I felt it was only right to steal it from him 🙂  The cool thing is, he builds robots to, really cool ones 🙂

Many people like my wife, family, friends have asked me what I am going to do with it, that’s a question that I am still working on.  It can make custom PCB’s which could be cool if I finally build and release a custom robot for people (a plan I do hope to do this year), also, I could use it to cut out parts to make robots, this seems like the logical answer.  All I know currently is it looks fricking cool and spins really really fast 🙂 Watch this space!

 

 

 

This weeks update :) Big Bang, VEX Worlds.

So, last week I was at the Big Bang Science Fair, I was asked to be a judge for the VEX Robotics National Championship 🙂


I also managed to get VEX the VEX Tank ready to ship it to the US for VEX WORLDS, build-wise, it’s complete, software wise, it’s not 🙁

My flights have been booked for VEX WORLD for next month, so full speed ahead to finish the software!  Anyone know ROS?

 

Big Bang Science Fair 2017 @ the NEC

Every year the VEX National Robotics Championship is held at the Big Bang Science Fair.  This takes place at the Birmingham NEC in March.  Last year I attended as a VEXIQ superuser showing off my VEXIQ Skateboard, this year I have been asked to be a VEXIQ Judge under O2 who I work for.  I have done judging a few times, and it is such a great experience, you get to meet some super cool kids who make the most impressive robots.  It is also brilliant that my work (O2) support this, they really have a mission to help out kids.

Anyway, I will do a full write-up of the event, once it happens 🙂  Please check out The Big Bang Fair.co.uk/

 

 

The VEX EDR Tank

Over the last few month’s, I have been building a vehicle out of VEX EDR with the aim of it to self-drive. This is my first big project with VEX EDR, I usually build large stuff out of LEGO Mindstorms or VEXIQ. My view was that VEX EDR would be easier as it is a) made out of metal as opposed to plastic, and b) more powerful. I thought it would take me a week to make the vehicle, and the rest of the time would be on software. I had to also learn ROS (Robotic Operating System).

It actually turned out more challenging than I expected. Due to my lack of experience with EDR, I just assumed metal would just be stronger, and the motors would just work. However the first version of the Tank collapsed under my weight, and it took around 10 versions to get it to move me (95kg) without the motors shutting down after 5 seconds. Unlike LEGO and VEXIQ, EDR motors had a protection circuit in (PTC) which shut down the motor if it gets too hot or draws too much power. This is, of course, a good feature to protect the motor, however, it made my project very difficult.

I went from 8 motors, direct drive to 14 motors geared down to 2.44. The 8 motors could move me at a rapid speed but would just shut down after a few second.

Here is the progress of how it went

Current state

So I managed to get the Tank to a point where it worked, it was not as fast as I hoped however it seems reliable.  Next is the software.  ROS is a big subject to learn, there are lot of books on it and it is not the easiest thing to learn.  I have actually made some good progress on this thanks to the community.  Stay tuned to my next post about ROS.

 

 

The Come Back : Bringing Robotics to Burf Development

So people, after some long thinking, and some random building. I have decided to shut down Burf.org.uk and move the content to here and focus my effects on making this site good again!

LEGO, Robots, Arduinos, anything crazy will be now featured on here.

I first want to do some posts on what I have been doing up until now etc, which should come shortly. Then fall speed ahead on new projects!

Hack24 new version coming

So, seems people liked it so I am going to start making a new version of Hack24 in Unity

Building it in Unity will allow me to get past a lot of my performance issues.

If you enjoyed the game, please let me know what you liked and what you want in the next version!

 

 

Mr Purple : VEX SMART RADIO : VEX WORLD FINALS 2016

So, the first part of this year, I have been swamped with VEX stuff to do, it’s been pretty good fun actually.  I now have lot’s of VEX EDR (the metal stuff) to play with.  Very excited about that!  I have also been invited to VEX World Finals in the US!  The aim is to build some smartphone controlled robots that show off the power of the Smart Radio. Thanks to Xander and RobotC it is now possible to do 2 way communication between VEXIQ and iOS

Code is here! https://github.com/burf2000/VEXIQ_iOS_ROBOTC

Anyway, so MR PURPLE, I went in to the garage, I came out with MR PURPLE.  3  DOF per arm and his head moves!  Super happy with him

2016-03-26 16.09.13

2016-03-26 15.40.46 2016-03-26 15.00.47 2016-03-26 14.58.47 2016-03-26 14.08.56