Category > rambles

Exciting Times!

» 24 March 2010 » In rambles » Comments Off

So, I think I’ve yet to mention in this blog where I work. This hasn’t been a particularly concious decision, there just wasn’t any need.

Ironic, then, that I mention it now – at a time when I’m not entirely sure!

http://www.amdocs.com/News/Pages/032310.aspx

That’s right kids, MX Telecom – my home for the last four and a half years – has been acquired by Amdocs and is to be merged with OpenMarket.

This is a really exciting time for me. As I juggle both tech and management hats there is going to be a tonne of new stuff to see, learn and experience over the coming months. Definitely exciting times! The first few things to come to mind:

  • What changes will managing a team separated by 6 timezones and nearly 5000 miles bring?
  • What toolchains do they use? How will they differ to what we do here?
  • Where we have similar products, how we will determine which one is better? What metrics will we need? How will we test these? How will we migrate from one to the other?
  • OpenMarket are smart guys. So are we. We’ve solved similar problems. How are our approaches different? How are they similar? Why?
  • What about culture? Sure, we’ve got a US office, but development has been very UK-centric. How will that change?

Of course, nothing has been decided yet. That list is a list of things going around in my head and not a list of things I’ve been told to think about. As always, the opinions represented here are mine and not my employers.

Continue reading...

Meh… Or, why does IE suck SO FUCKING MUCH

» 24 February 2010 » In rambles » 2 Comments

I just had the misfortune to check out this blog in IE. Figured it would be a good idea as I’m enjoying using Typekit to add some typographic flair to my theme and hadn’t checked to see how much it would break IE.

Turns out, totally independently of Typekit, the blog is hosed. Completely. In IE 6,7 & 8. GRRRRRRRRRR.

I should point out that:

  1. I checked the theme when I first installed it, and confirmed it worked in IE
  2. I’ve done very, very little to my blog since then other than adding a few basic plugins to wordpress and actually writing some things
  3. A cursory disable/enable of my most recent plugins didn’t make any difference, so I can’t figure out what broke it quickly

So, instead, I’ve stuck on a boring basic theme until I have time to look into this properly. Apologies all.

What really annoys me about this is that I don’t own a Windows computer. The only way I can check this is using the VMs at work. I regularly check on all browsers I actually use/can install on either my Ubuntu or OS X boxes (Safari, Firefox, Chrome, Opera, OmniWeb) and none of them has had any trouble at all. I spend enough sodding time at work dealing with IEs shitness, I don’t want to have to fuck around with it at home too!

Right. Enough. This is going to turn into the full blown, vehement rage against IE I’ve been threatening to write for months if I don’t stop now.

Does anyone know if you can specify browser specific themes in WordPress?

Continue reading...

Tags: ,

Topless Dining

» 23 February 2010 » In rambles » Comments Off

It’s funny. I’ve never been one for TV dinners and during my childhood eating was always a family affair. But recently both Christina and I found ourselves bringing our laptops to the dinner table.

It happened organically without any conscious decisions being made, and as such initially went unnoticed and unchecked. Perhaps because we are both interested in our jobs and both work (too) hard. Perhaps because we’re both permanently attached to the internet (we cook a lot from the most amazing smitten kitchen, so it actually makes sense to have a laptop around as we’re preparing dinner).

Either way what was initially just catching up on blogs or a quick way to convert between metric & Christina’s funny Canadian units quickly became a real problem. We stopped talking. I kept working. If I was coding, I’d barely notice what I eating, who I was eating with or what they were saying.

This all happened a few months ago, and after a bit of a chat we figured what had changed and fixed what was becoming a problem for us without any drama. Tonight however I had my laptop out at the table whilst cooking – watching the winter olympics in the kitchen as Christina wasn’t back from rowing yet. But as soon as she arrived home I automatically closed the lid and we started talking. For some reason it reminded me of what things had been like, and how much happier we both are now.

It still bemuses me how easily we got sucked into something which, when written down, seems so obviously dysfunctional. Yet another example of technology and modern society taking over.

Speaking of which, I’m currently lying on my bed typing into my laptop, reading about grails, checking out my IRC and gmail and listening to music streamed from my media server downstairs – whilst my girlfriend sleeps next to me. Time to kill the technology! :)

Continue reading...

Introducing the-elliott-family.org

» 30 December 2009 » In rambles » Comments Off

It was just before Christmas and I was up late, waiting for a call from Christina who’s back in Canada. On a whim and needing something to do to keep me awake I purchased the-elliott-family.org, with a view to setting up Google Apps for your Domain and provider agnostic email addresses for my family.

I figured I should create a splash/home page for the domain as well, but what to put on it (and more importantly, how to make it keep my attention long enough to code it).

First things first, what does it need to do?

  • Look modern/pretty. I’m not going to put my name & time into something I’m not proud of,
  • Provide links to the various Google apps, so my family don’t have to remember all the subdomains,
  • Provide links for randoms to contact people in the family, without giving out their email addresses – this will probably never be used but provides additional purpose for the site.

The finished result is now at http://the-elliott-family.org. I’m pretty pleased with it. The little bird image was stolen from a template in Pages and provided the inspiration for the rest of the page. To my eye it’s clean, modern, simple and kinda cute.

Things I don’t like:

  • The menu is too hidden. Not a problem for my family (as they can be shown how to access it), but I doubt anyone will find it without being shown. That’s easily fixable by having the menu ‘open’ by default, but I don’t want to. And seeing as I don’t really expect anyone else to ever use this, I’m not sure it’s that important. I may change my mind about this :)
  • My original idea for the menu was to have the little flock of birds trailing it behind them on a banner, with the animation showing them ‘flying’ across the screen (like this). But there are difficulties here. The banner doesn’t want to be as wide as the menu when opened. So I ignored this for now as not worth the effort designing a flying banner background image.
  • I’ve cheated a bit on the CSS, using overflow:hidden on the html and body elements. This breaks when the window is small (or you’re on a mobile device). I should fix this up at some point.
  • I’d like to use a nicer font all round on the site, removing the text-as-image from the central image. The only cheap & reliable way of doing this that I’m aware of is to use Typekit, but I already use them for my own domain and I’m not sure I can justify the cost of upgrading to a ‘portfolio’ account for this. But I might :)

This was really only a tiny project (about 3 hours of coding) and more of an exercise in design than engineering. But I don’t get enough time playing with design these days so I’m glad I put the effort in.

Have a look and let me know what you think.

Continue reading...

Tags:

Learning to read

» 23 August 2009 » In management, rambles » Comments Off

This post forms part of my larger blog on starting out as a manager. See here for the full post…

Reading is good. New skills require practice and learning. New jobs require new skills. Maybe you were lucky and had a super-manager from the day you graduated and you can just emulate them. For the rest of us we have to aim to better our personal experience. Here’s a list of stuff I’ve read that I found really useful to help managing people.

Personally, I found managing the projects harder. There’s a lot of information out there but a lot of buzzwords too. Again, I could write pages on what I’ve learned here. I’ll try and keep it short.

  • Collate data on what work your team needs to do.
  • Collate data on what work your team is actually doing. This is quite hard.
  • Determine the goals of your team and how they fit into the goals of the company. Tell them to your team. This allows them to work effectively and make informed decisions.
  • Bin any notion of using Project Management software. Unless you’re looking after tens of people (in which case, what on earth are you doing listening to me) they just take up too much time and don’t work very well. Use a whiteboard or a wiki. I’d love to have a big electronic whiteboard to combine the advantages of both (and for Monday night Quake III sessions). I’ve not found the perfect solution for this yet.
  • Plan to spend a lot of time keeping all the information up to date. It won’t feel like work, but it is important.
  • Don’t give up! Nothing in project management is complicated. That does not mean it is not difficult. (Paraphrased from ‘Behind Closed Doors’)

Continue reading...

Tags: ,

Learning to communicate & empathise

» 23 August 2009 » In management, rambles » Comments Off

This post forms part of my larger blog on starting out as a manager. See here for the full post…

The facts are this. You can no longer sit in a nice, dark corner of the office, hacking away at a bunch of bug fixes and new features, ignoring the Marketing department. You are in charge of a team of people. People who need your guidance – not because they are less intelligent than you but because they are paid to sit in a nice, dark corner of the office, hacking away at a bunch of bug fixes and new features, ignoring the Marketing department – and you are paid to ensure they can stay there, without interruption. To do this somebody must talk to the Marketing department. And Product Dev. And the Senior Management, Account Management & Sales teams. That somebody is you.

You also need to interact with people at higher levels of management. People more busy even than you (as if that could be possible!). People who need accurate, informative and succinct pieces of information to do their jobs properly. Unless you’re very lucky you’re also going to have to get very good at communicating with your team. Changes will take place. A company re-structure, a large new client and you’re the poor thing that has to convince a team of techies that updating the iteration plan every day really is beneficial to them. No, really. It’s not a waste of time. And that workplace assessment is vital too.

To do all this, you need to communicate and to empathise. These are not necessarily skills that the average techie has used recently. Maybe you’re out of practise. Open yourself up to other peoples problems and try and figure out what you can do to make them less painful. Your job now is a facilitator, go facilitate.

Most of all stick with it – it gets easier.

Continue reading...

Tags: ,

Learning to focus

» 23 August 2009 » In management, productivity, rambles » Comments Off

This post forms part of my larger blog on starting out as a manager. See here for the full post…

I think this is a lot harder than it sounds. My current role requires that I Project Manage, Tech Lead, Line Manage, Develop, Account Manage & help Tech Support; a role where I go from meetings discussing the problems we’re likely to face with resourcing in six months time or where we’d like the products to be a year from now to advising a developer on exactly how that method should behave under those particularly esoteric set of circumstances for this tiny corner of the codebase – all in the space of time it takes me to walk the length of the office (about 15 seconds, we’re a small company!). Keeping an eye on what’s important at each of the different levels within a company is really hard work, and having to switch between them constantly is a huge drain on your time. Here’s my two cents for dealing with focus:

Play nicely

“There isn’t enough room for me and your ego” – Vesper Lynd, Quantum of Solace

Don’t let your ego get in the way of your job and, more importantly, your relationship with your new team. Yes, I know, you’re the new boss. And yes, I know you might be feeling a little insecure about that or at the very least wanting to cut your teeth and settle into your new role. However, I can assure you of two things:

  1. unless your new project is really fucking simple you won’t know everything there is to know about it;
  2. other people on your team will know more about some bits of it than you do.

So don’t let your ego tell you otherwise. If you do, you’ll spend way too much energy focusing on the wrong stuff – trying to prove that you’re superman – and not your job.

Get organised

Seriously. That list of tasks you kept in gedit was fine when you only had to look after yourself. Maybe you had 30 things on there. The last time I checked my tasks I had more than ten times that – far too much to keep in my head at once. How on earth can you keep all that under control? I tried a bunch of things. I’m still trying a bunch of things.The most important one is easy. Delegate. But keep track of what you’ve delegated as you’re ultimately responsible for seeing it through. Secondly, find a system that works for you and stick with it. For me this means, find a system that makes it trivial to record new items (more on this later) and fish stuff out quickly. Read lots if you’ve not looked into productivity tools before. David Allens book “Getting Things Done” is a great place to start (and a lot less self-helpy that the title suggests) as is Merlin Manns blog at http://www.43folders.com.Then find the tools to keep you using that system.

In the last 12 months I’ve tried using a Hipster PDA, ThinkingRock, Netcentrics Outlook plugin, Thunderbird add-ons, Omnifocus and a number of other apps designed specifically for task management. In the end Omnifocus won, not necessarily because it’s the best app (although I think it is), but because it’s super easy to input new stuff. Using OS X’s Services facility Omnifocus can grab text from virtually any application, store it quickly and let you get on with what you’re doing. I haven’t found anything similar on Linux or Windows. (The only problem here is that I don’t have a mac at work, but I do have a personal mac lappy that’s finding its way into the office quite a lot these days. If anyone can prove me wrong using something that works well with Linux please let me know!).

I could write an entire blog post in this in itself (I may well do), but the single most important point here is not context switching. I check my email maybe twice a day. If something comes in that I need to think about before my next bi-weekly with Product Dev, or it contains a point I want to raise at my next personnel meeting it takes me three keystrokes to stick it away in a special place where I can retrieve it when I’m preparing for those meetings sometime next week. I can file the email away immediately, keeping my inbox tidy, and know the issues it contained wont slip through the cracks. Then I can forget about it and get on triaging my inbox. Two minutes later I’m back on the task at hand. When you’ve got lots of information flying at you from all over the place this is really, really, really important.If you think you’re too busy to deal with all this productivity crap go and do it. Now. It probably saved my life.

Continue reading...

Tags: , ,

Learning to control without control

» 23 August 2009 » In management, rambles » 1 Comment

This post forms part of my larger blog on starting out as a manager. See here for the full post…

This was a hard one for me. Just after I started this gig, our biggest client decided they wanted to use one of the apps I look after in a big way. Like two orders of magnitude larger than our current biggest client used it. There was lots of uncertainty. There were lots of meetings – internally figuring out how we were going to do this and externally convincing the client we could do this. I had to be at most of these meetings but, worse, I had to keep track of what my team were up to, how they were getting on, how likely it was that we were going to meet our commitments.

Timelines were tight. I reckon in that first month I spent 20 – 25 hours a week in meetings. I had days with solid meetings from 10am – 7pm. That really hurts. Then I’d get out and the guys would ask me questions. Everything was moving so fast. I’d get home from work and read SVN commits until my eyes no longer focused on the screen because I needed to know how everything worked, to understand exactly how the team were building all the plans we had, to be confident when I was asked how things were going that I knew because I understood every new line of code.

This was a mistake.

This was not very sustainable.

I’m glad I realised the error in my ways.

The trick here is to threefold.

  1. Trust & understand your team. I’m lucky enough to work for a company that only hires very bright people. People with energy, enthusiasm and a genuine desire to produce really good work. That doesn’t mean these guys are infallible. Trust your team to do what they say they’ll do, but understand them well enough to know how likely that is to happen and what you need to do to increase that likelihood.After a certain size a project gets to a state where one person can’t understand everything that’s going on at every level.

    As a Project Manager you need to learn to control the game without having control of all the pieces. Your job isn’t to be the most knowledgeable dude on the project. Your job is to be the dude who knows who the most knowledgeable guys and girls are for every piece of the puzzle. Sure, that’s going to be you for some bits – but it won’t be you for everything. Figure out who is, what makes them tick, and how you can keep them on your side. For most techies  I know, listening to them, showing you respect their opinions and, when they differ from yours, taking the time to explain why is a good place to start.

  2. Communicate. I guess this is part of understanding in the above bullet, but find a way to help your team communicate. This isn’t something you can just read about, as it’ll depend on the dynamics of the team – individual personalities within the team, the size of the team, how dispersed your are from one another etc. Luckily for me, this one was pretty easy. We all sit in the same office, in the same city & we all get on well. So I had a good starting point but we’ve improved on this in a couple of ways:
    • Daily standups: We get together every day and have a 15 minute chat about what we’re planning to do and what we got done yesterday. These are useful for me – the manager – but are actually really useful for the gang too. People get a chance to say what they’re working on and more often than not somebody else pops up with some interesting titbit on the subject. Knowledge sharing – for free (well, almost). Winner!
    • Beer: Yup, that’s right kids. Beer. Or whatever other non-work activity you and your gang fancy doing. Every couple of months one of the guys cooks for the rest of us at their place, rotating around the team. We leave work together, grab a few beers, eat some tasty food, watch a movie or shoot some bad guys and generally hang out. This sounds like a small thing, but it’s about bringing the team together. Inviting them into your home creates a bond and helps the team gel. (The last time we did this we actually had the team doing to cooking rather than the one guy – who was ill – and that was even better!). Fostering a sense of family will help you make the transition from a group of guys working on the same project to a team of guys working to help each other out.
  3. Define the goals for your team. This one seemed so obvious to me once I thought about it, but wasn’t something we were doing anywhere in the company. I’m not sure if that’s due to our past – a small company full of friends, where the goals are naturally shared by being surrounded by like minded people you know well. But as you grow you can’t continue like this.

    Why are they important? Simply because, as a manager if you’re to trust your team to get on with their work you need to ensure that you both understand which of the many tasks available are the most important. My team has responsibility not just for development, but for operational support, testing, maintenance & end user support (to an extent), so it’s not always straight forward to figure out what the most important task to be getting on with right now.

    If as a team you can’t agree on what you’re biggest priorities are how do you expect to operate effectively?

Continue reading...

Tags: ,