Oct 07

My new clients have brought me down to London, where I’m staying  in a penthouse of a friend of mine overlooking the London Eye, Big Ben and the sparkly city lights, which is pretty amazing. I am getting quite used the buzz of the big city but look forward being back in Edinburgh, where life is just a little bit slower…

This week’s developer interview goes to Diego Campo, a very talented developer who I worked with during my time in Barcelona. Enjoy!

Name: Diego Campo

Bio: Senior Java Developer at Enormo.com.  Have managed a small team of 3 people using Agile methodology.
4y development experience.
Worked and studied in the UK(Cambridge, Nottingham) and Spain (Zaragoza, Barcelona).
Interested in psychology and creativity in art & life.

Specialities: Backend development. AI, Information Retrieval. Java expert.

URLs:

Blog: http://xmariachi.blogspot.com

LinkedIn: http://www.linkedin.com/in/diegocampo

Twitter: http://twitter.com/xmariachi

Question 1 (Colin Brown): Over the past 2 years mobile web browsing has become far more common and accessible, gadgets such as Apple’s iPhone has helped to raise the bar in this field. How important do you think developing websites for this medium is? Should mobile browsers, such as Mobile Safari be one of the web browsers we build websites to comply with?

Diego: I’m not very much involved with mobile business, so I think my opinion will not be very relevant in this subject. My use of advanced mobile applications is none.

Question 2 (Crawford Tait): Will increasingly-sophisticated javascript applications make flash redundant?

Diego: Flash will probably remain being the leading technology in its niche, but its use may be reduced to those applications where Flash does give that extra plus, as opposed to some overuse of Flash we saw in the previous years.

Question 3 (Diego Campo): Have you thought of changing your career during the last year? If so, which one?

Diego: Yes. Psychotherapy. At the moment is only a thought, although I’m following a course for the last two years and always have had an interest.

Question 4 (Colin McMillan): As a developer you need to keep on top of emerging technology.  Given that there aren’t enough hours in the day, how do you decide what technologies or languages to pursue?

Diego: Depending on the areas that I want to expand. For example, right now as a Java backend developer, I have an interest in Scala and functional languages such as Clojure. But also, I’d like to know more about web developing languages such as Ruby or PHP, since I’m also thinking on some ideas for projects for the web – so I could myself build some prototypes.

Question 5 (David Poblador): How has open-source/free software changed the way you develop software?

Diego: I began to know about it on early university years. It looked like an utopia an the beginning, but as I saw how real it is, then it was clear to me it is one of the greatest initiatives in technology ever. I remember to have thought it’s the last revolution we’ve seen in the developed countries.

Question 6 (Kilian Valkhof): What do you strive for most in your code?

Diego: Clarity, testability, readability, structure.

Question 7 (Catherine Bartlett): Tell me about the best developer you’ve ever known.

Diego: He is very active, and he has an extreme ability to switch from general abstract concepts to the very detail in no time. He has a passion for producing the best solution for a certain problem, and able to explain his ideas properly, and to produce super-clear specifications. He is very flexible and always focused on the problem, while also taking care of the pieces of his team as a system itself, including coworkers and subordinates. He has deep human principles and strives for transparency.

Question 8 (Erik Vold): What are some of the new technology trends that you think we will see in this century?

Diego: I don’t know which ones they will be, but I bet they will come from countries where technology and internet implantation is growing now. A huge market in terms of population is to be open, and it will create new needs to be satisfied. Thus, it may not be so much about innovation in technology, but about a better use of it.

Question 9 (the contributer would like to remain anonymous): How much of your work time do you spend analysing defect reports so that future instances of the same defects may be mitigated, or altogether removed from future builds?

Diego: I consistently write test cases to prevent this. I spend about one to two tenths of the developing time writing these tests.

Question 10 (Alan Graham): We are bombarded every day with new approaches, new libraries (Prototype.js vs jQuery, Java vs .NET, PHP vs everything), new free services (Google Analytics vs ???).  What criteria do you use to quickly decide what to use?

Diego:

  • Suitability for the project.
  • Actual expertise of the team on certain languages,
  • Maturity of the tool and documentation.
  • Usage, support and coverage on the net.

Question 11 (Richard Kelly – fellow online marketing dude): How much of a pain do you find developing and re-developing code for SEO?

Diego: I am not facing this problem in my daily life. But I think that I could be a bit annoyed somehow if I suspect that the changes are done due to a lack of planning and knowledge.

Question 12 (Felicitas Betzl): Having worked in a variety of agencies I’ve seen major collisions between account/project managers and developers for a variety of reasons. Can you think of 5 tips you can give account and project managers, which you think would make developers lives easier?

Diego: One of the major differences I have seen is that account and project managers sometimes tend to be too short-termish on their decisions, many times driven by emotions such as fear, anxiety and need for self-assurance. Developers tend to give credit to well-traced plans and if you are able to do that, you will not have to do anything to get the respect from developers. Developers tend to like clear long-term decisions, transparency and truth. They are also sensitive to confusion, and they will normally identify as weakness if you just try to hide it – and they will really appreciate if you just come to them to ask their opinions.

Question 13 (just for fun):  What is your favourite cartoon character?

Diego: Doreamon

Post to Twitter Post to Plurk Post to Yahoo Buzz Post to Delicious Post to Digg Post to Facebook Post to MySpace Post to Ping.fm Post to Reddit Post to StumbleUpon

written by Feli \\ tags: , , ,

Sep 30

It’s quite fascinating that I can edit my blog post sitting on the train from London to Edinburgh and have Wifi access thanks to the Nationalexpress. I’m pretty impressed with that!

I’m happy to present the next web developer interview with Colin McMillan who I had the pleasure working with a short while back. Here it comes!

Name: Colin McMillan

Bio: I’m a self-taught Web Developer and Systems Administrator with 9 years commercial experience.  I’ve built up skills through roles as in-house developer with small-scale organisations building  content managed websites, as well as large corporates building complex business applications.  I have been with Dog Digital, one of Scotland’s leading Digital Marketing agencies, for over 3 years and currently sit as Senior Developer and Infrastructure Manager.

Specialities:

  • PHP / MySQL
  • ASP.NET (C#)
  • LINUX & Windows Systems Administration
  • Networking and Security
  • Playing house and disco at the odd local party

URLs:

NHS24

ScottishPower Quote

Ideasud

DJ Andy Smith

DJ Roki (seriously needs updated!)

Twitter: http://twitter.com/djroki

Question 1 (Colin Brown): Over the past 2 years mobile web browsing has become far more common and accessible, gadgets such as Apple’s iPhone has helped to raise the bar in this field. How important do you think developing websites for this medium is? Should mobile browsers, such as Mobile Safari be one of the web browsers we build websites to comply with?

Colin: Absolutely, although the nature of the build will be dictated by the client.  Even now many clients do not stipulate mobile compatibility, and an agency will rarely put in the extra work required if they don’t have to!  This is a question about whether the agency should be persuading clients to  make the extra investment to ensure mobile compatibility, as clients don’t seem to be prioritising this yet.  However I think the new generation of mobiles are pretty good at representing the standard build so maybe soon there won’t be any separation.

Question 2 (Crawford Tait): Will increasingly-sophisticated javascript applications make flash redundant?

Colin: It certainly has the potential to, but I think it’s a while off for one main reason.  Until JavaScript has a nice dedicated development environment like Flash has, it will remain very complex, code-oriented and too abstracted from the creative process.

Question 3 (Diego Campo): Have you thought of changing your career during the last year? If so, which one?

Colin: If I could open a small restaurant in the Scottish Highlands and spend my time cooking seriously good food for a living I probably would.  It’s more a dream than a likely career change though…

Question 4 (Colin McMillan): As a developer you need to keep on top of emerging technology.  Given that there aren’t enough hours in the day, how do you decide what technologies or languages to pursue?

Colin: To answer my own question, it is sadly dictated by clients and technology marketing, and not by the best technology for the job.  I have a love/hate relationship with .NET and at one point would have run a mile rather than have to learn it.  It has now become the platform of choice for many clients and is therefore unavoidable.  I’ve had no time to investigate Python, Ruby on Rails, or even some of the PHP frameworks out there like Zend, Cake or Symfony which I feel may be more stable, easier to learn and faster to develop in than .NET.

Question 5 (David Poblador): How has open-source/free software changed the way you develop software?

Colin: I’ve come from an Open Source background, through a proprietory middle period in my career to end up using a mixture of both.  I can’t say Open Source has changed the way I develop software as it has always been the way I develop.  I have certain expectations on how things should perform which have come from using PHP, MySQL and LINUX that I am often frustrated aren’t reflected in .NET, SQL Server and Windows.

Question 6 (Kilian Valkhof): What do you strive for most in your code?

Colin: Perfection!  No really, I am a ridiculous perfectionist and have often spent far too much time trying to find the most elegant solution to a problem.  One of the biggest changes I’ve had to make in recent years is to balance timescales (and therefore budget) with producing clean, modular, and stable code.  Sometimes I manage that… :)

Question 7 (Catherine Bartlett): Tell me about the best developer you’ve ever known.

Colin: Tricky, as the only other web developers I’ve worked with are those at Dog.  I have a lot of respect for Crawford (Tait) as we’ve worked together on a number of projects at Dog and in other positions in the past too. His PhD in Computing Science gives him a great core knowledge that I’ve never had and he has a great mind for taking a problem from a different angle.  Seeing as he’s a mate but also my Manager I now feel like a total kiss-arse…

Question 8 (Erik Vold): What are some of the new technology trends that you think we will see in this century?

Colin: Hard to imagine what we’ll see in the next ten years let along this century (so I’ll deal with that more manageable timeframe)! I expect we’ll have wi-fi available across every major city.  Mobile devices will become more powerful than today’s PCs, and will be completely dependent on connectivity and integration with the Internet.  2D holographic projection will become available so you can view HD movies from your mobile on the nearest wall.  Oh, and we’ll get to work on jetpacks and hover-boards.

Question 9 (the contributer would like to remain anonymous): How much of your work time do you spend analysing defect reports so that future instances of the same defects may be mitigated, or altogether removed from future builds?

Colin: Quick answer?  None.  We don’t have such a thing as defect reports.  We fix bugs when they arise, and it’s pretty rare that the same bugs will come back.  Just different bugs… some midges, some spiders and the odd cockroach.

Question 10 (Alan Graham): We are bombarded every day with new approaches, new libraries (Prototype.js vs jQuery, Java vs .NET, PHP vs everything), new free services (Google Analytics vs ???).  What criteria do you use to quickly decide what to use?

Colin: That’s tough and relates to question 4.  It’s pretty hard to appraise these things yourself as you’d end up spending all your time investigating and not developing.  People around the workplace pick up on things and they then get tried out.  If they work then there is no need to try the other one.  We use jQuery primarily because one of our guys got into it, it does the job so there’s no point in wasting time trying to figure out Prototype.

Question 11 (Richard Kelly – fellow online marketing dude): How much of a pain do you find developing and re-developing code for SEO?

Colin: I don’t see it as a pain – more something that is now part of the job.  Obviously if you have to overhaul a site that uses querystrings to then use friendly URLs, there can be a lot of pain in getting it to work, however that’s the way things need to be done so it’s necessary.  Most of the time though, for new sites or complete re-skins, the templates and coding is getting done with SEO in mind through the whole process, so it’s just the “right” approach.

Question 12 (Felicitas Betzl): Having worked in a variety of agencies I’ve seen major collisions between account/project managers and developers for a variety of reasons. Can you think of 5 tips you can give account and project managers, which you think would make developers lives easier?

Colin:

  1. Don’t agree to something with the client without either knowing exactly what’s involved and that there’s time and budget to do it.  If you don’t know, don’t commit!
  2. Don’t let a project brief run away.  Make sure there’s a spec and stick to it (or get more time and money).
  3. Don’t micromanage, but at the same time don’t take your eye off the ball.  There’s a balance to be struck in keeping on top of a project and making sure it stays on track.
  4. Be (more) honest with clients.  A lot of the time they can tell you’re lying or spinning something.  If you’re straight with people they’ll respect you more and not be on your back as much.
  5. Answer the fecking phone!!!

Question 13 (just for fun):  What is your favourite cartoon character?

Colin: Bod!  He / she was the first cartoon I remember seeing.  I found all 13 episodes on VHS in a Co-Op for a fiver a couple of years ago.  It had a sticker that said “relive your mis-spent youth” on it and brought back so many happy memories of ice cream and strawberry milkshakes…

Cheers, Colin! This is a really fun interview! Looking forward to eating in your restaurant up in the Highlands :)

Post to Twitter Post to Plurk Post to Yahoo Buzz Post to Delicious Post to Digg Post to Facebook Post to MySpace Post to Ping.fm Post to Reddit Post to StumbleUpon

written by Feli \\ tags: , , ,

Sep 22

Today, I am very happy to publish the interview with Catherine Bartlett, the only female developer participating in my series of developer interviews. I had the pleasure working with Cath  in sunny Barcelona. She is originally from Florida but has lived in Spain for many years now. With over 20 years of experience, I was able to learn a lot from her.

Please read below her answers!

Name: Catherine Bartlett

Bio: 16 years developing software then 5 as manager.

Specialities: streamlining, simplificiation, getting rid of fluff, psychology of development

Question 1 (Colin Brown): Over the past 2 years mobile web browsing has become far more common and accessible, gadgets such as Apple’s iPhone has helped to raise the bar in this field. How important do you think developing websites for this medium is? Should mobile browsers, such as Mobile Safari be one of the web browsers we build websites to comply with?

Cath: I don’t know.  I can’t decide if mobile browsers are all that important (even though it certainly seems to be the trend) simply because I think we are on the verge of input overload already.  Also, I think that as people who work in the technical field, we have an exaggerated idea of how other people live.  There is an enormous segment of the population that doesn’t use the internet on a mobile device even if they have and use a device capable of connecting.

Question 2 (Crawford Tait): Will increasingly-sophisticated javascript applications make flash redundant?

Cath: I sure hope so and i’ll bet you do too.

Question 3 (Diego Campo): Have you thought of changing your career during the last year? If so, which one?

Cath: I think about it every time I get pissed off but I continue to fail to find a career that I think would be more appropriate.

Question 4 (Colin McMillan): As a developer you need to keep on top of emerging technology.  Given that there aren’t enough hours in the day, how do you decide what technologies or languages to pursue?

Cath: My first response is “instinct” but we all know that that can be explained as a conglomeration of little signals that we receive and process without even realizing it.  To give a really good answer I’d need to analyze that and I don’t have time right now.

Question 5 (David Poblador): How has open-source/free software changed the way you develop software?

Cath: “Back in the day” languages and tools were part of a homogeneous environment.  Now we can and have to mix and match.  That gives us great freedom but also is a pain in the neck compared to how things used to be.

Now I don’t write much software because most of what I need already exists.  I think cars have changed the same way.  Car manufacturers used to make their own parts.  A VW had a VW transmission, for example.  The people who designed the cars undoubtedly determined the technical specs for the parts.  Now parts are mixed and matched from all over – someone who designs cars for Ford decides whether or not to use a particular model of a Mitsubishi transmission that comes close to the correct spec, for example.  So it’s more like meta-design now – simpler and at the same time more complicated.  The world of open-source/free  software has gone through more or less the same transition.  The nature of problems that one can encounter is different.

Question 6 (Kilian Valkhof): What do you strive for most in your code?

Cath: Elegance and reliability, of course.  Also to use whatever tool or code i’m using to the maximum of its capability – to find that obscure function that lets you abstract something, etc.

Question 7 (Catherine Bartlett): Tell me about the best developer you’ve ever known.

Cath: No names but his code was art.  You looked at it and understood it perfectly and knew that you never would have thought of that.  It was clean, elegant, and used available tools in ways that were shockingly good – that maybe even the authors hadn’t thought of.

Question 8 (the contributer would like to remain anonymous): How much of your work time do you spend analysing defect reports so that future instances of the same defects may be mitigated, or altogether removed from future builds?

Cath: None.  I’m too bombarded by today to try to anticipate the future.  In my opinion, the solution is to write tests for every feature and defect that is coded and those tests will protect against future instances of the same defect.  My team isn’t there yet but we’re moving toward it.

Question 9 (Alan Graham): We are bombarded every day with new approaches, new libraries (Prototype.js vs jQuery, Java vs .NET, PHP vs everything), new free services (Google Analytics vs ???).  What criteria do you use to quickly decide what to use?

Cath: Same answer as for Question 4

Question 10 (Richard Kelly – fellow online marketing dude): How much of a pain do you find developing and re-developing code for SEO?

Cath: It’s a pain.  Seems like if things keep going the way they are, that something will have to change as far as SEO is concerned, but I certainly can’t predict how.

Question 11 (Felicitas Betzl): Having worked in a variety of agencies I’ve seen major collisions between account/project managers and developers for a variety of reasons. Can you think of 5 tips you can give account and project managers, which you think would make developers lives easier?

Cath:

  1. Speak directly and clearly and imagine that developers listen in 1’s and 0’s (yes and no).
  2. Explain the problem you want to solve instead of (or in addition to) the solution you are asking for – there is often an easier way that will cost less.
  3. Take an “agile product owner” class.  This is not a RTFM comment.  It is actually quite eye-opening.
  4. Remember that developers have to treat all cases equally – if 99% of the time the feature should work one way and 1% of the time the feature should work another way, although that makes a difference for humans, it does not for machines.  Developers have to program every case correctly, which usually costs exactly the same.  This leads to the following entry…
  5. Try to eliminate the special cases that don’t do a lot for the user but cost a lot to develop.

Question 12 (just for fun):  What is your favourite cartoon character?

Cath: Yikes.  I grew up with no TV – can’t answer this one.

Thank you so much for taking part in the interview, Cath! I hope we get to work together again sometime in the future!

Post to Twitter Post to Plurk Post to Yahoo Buzz Post to Delicious Post to Digg Post to Facebook Post to MySpace Post to Ping.fm Post to Reddit Post to StumbleUpon

written by Feli \\ tags: , , ,

Sep 15

I finally completed my move back to Scotland, Edinburgh this time for a little change of scenery. Hence I apologise for the delayed publication of the next developer interview. Without further ado, here it comes:

Name: Erik Vold

Bio: I am currently a freelance developer, and I’ve been a web developer since ‘99 when I started working with JavaScript and ColdFusion at Triple 8 Networks in California. Afterwards I went to UBC for a Bachelor of Science in Statistics and Computer Science while doing a little freelance web development. After graduating I got started working at VKI Studios for awhile, in Vancouver, BC, about two years ago, started blogging, and started to work on some open source projects.

Specialities: Usability, Statistics, JavaScript, ColdFusion, SQL, R, Matlab, Java, Python, HTML, XML

URL: http://erikvold.com/

Twitter: http://twitter.com/voldsoftware

Question 1 (Colin Brown): Over the past 2 years mobile web browsing has become far more common and accessible, gadgets such as Apple’s iPhone has helped to raise the bar in this field. How important do you think developing websites for this medium is? Should mobile browsers, such as Mobile Safari be one of the web browsers we build websites to comply with?

Erik: To the last question, yes certainly. To the first question, I think it’s very important to develop for these new mobile devices in particular, because they are or will be more widely spread than computers ever were.
I think the best approach is to design agile interfaces and cover a high number of devices/people with a low number of interfaces. I also think it is very important to build an api (I include microformats here) for your data, and functionality, so that other people can build their own interfaces, or  add to what you build (with UserScripts or UserStyles for example). Twitter is a great example of all of this.

Question 2 (Crawford Tait): Will increasingly-sophisticated javascript applications make flash redundant?

Erik: The overlap is growing that is for sure, but I think both will always be around. Flash seems to dominate for videos however. I think that JavaScript should be used wherever it can be in place of Flash as a general rule though.

Question 3 (Diego Campo): Have you thought of changing your career during the last year? If so, which one?

Erik: I wish I had more Math in my life sometimes, but other than that no way.

Question 4 (Colin McMillan): As a developer you need to keep on top of emerging technology.  Given that there aren’t enough hours in the day, how do you decide what technologies or languages to pursue?

Erik: It’s a great problem to have isn’t it? I’m trying to take care of myself so that I live to be around 100 first of all ;] after that I prioritize, and the major factors in this are: interest to me, and usefulness to me.

Question 5 (David Poblador): How has open-source/free software changed the way you develop software?

Erik: Tough one.. I can say for certain that reading open source software has increased my abilities as a developer at least 2x.

Question 6 (Kilian Valkhof): What do you strive for most in your code?

Erik: Performance, clarity/maintainability, and density in that order. Ultimately usefulness, and usability would goes first though.

Question 7 (Catherine Bartlett): Tell me about the best developer you’ve ever known.

Erik: Kevin P. Murphy, the professor of a class I took at UBC, who taught bayesian machine learning, some basic ai stuff, which is a field I will love to watch grow.

Professor Murphy was really good at condensing material, cutting the fat, and making it memorable. Also, he was working on a textbook which became the main text for the class, and that was a really good textbook, but I only have an old draft now, and I don’t see the book on amazon yet..
Murphy worked on the Bayes Net Toolbox for Matlab, and some other Matlab software, and his class is where I started using Matlab which is a fantastic program.

Question 8 (Erik Vold): What are some of the new technology trends that you think we will see in this century?

Erik: Augmented reality, many more types of displays, increased usage of projection screens, focused audio devices, and far more ai.

Question 9 (the contributer would like to remain anonymous): How much of your work time do you spend analysing defect reports so that future instances of the same defects may be mitigated, or altogether removed from future builds?

Erik: Not much currently, I haven’t built anything that big as of yet though. At my previous job I was doing a fair bit of that, it mostly wasn’t my code however. To deal with this though we used SVN, but I would recommend Git now, and bug tracking software, which are both vital when working with a team.

Question 10 (Alan Graham): We are bombarded every day with new approaches, new libraries (Prototype.js vs jQuery, Java vs .NET, PHP vs everything), new free services (Google Analytics vs ???).  What criteria do you use to quickly decide what to use?

Erik: I usually make sure that I take a close look, and am making a somewhat educated choice, and always hold on to doubt; as much depends not just on what a product can do now, but how it will grow in the future.

Question 11 (Richard Kelly – fellow online marketing dude): How much of a pain do you find developing and re-developing code for SEO?

Erik: I try to avoid re-developing code, with a long pole.

Question 12 (Felicitas Betzl): Having worked in a variety of agencies I’ve seen major collisions between account/project managers and developers for a variety of reasons. Can you think of 5 tips you can give account and project managers, which you think would make developers lives easier?

Erik: This is a tough one.. the project managers I have had were mostly great. Just remember to keep developers in the loop, Basecamp is a great solution for this.

Question 13 (just for fun):  What is your favourite cartoon character?

Erik: Towelie!

Erik, thanks a lot for participating in the interview and all your interesting input!

Post to Twitter Post to Plurk Post to Yahoo Buzz Post to Delicious Post to Digg Post to Facebook Post to MySpace Post to Ping.fm Post to Reddit Post to StumbleUpon

written by Feli \\ tags: , , ,

Jul 28

People who follow me on Twitter know that I am planning interviews with developers over the next month.

If you are a developer and would like to receive a mention and a link from my blog, all you need to do is participate!

Requirement is only that you provide one question yourself, which you would like to ask fellow developers in the internet industry.

The interviews will kick of next week, so hurry up and send me your questions.

I look forward to hearing from you.

Post to Twitter Post to Plurk Post to Yahoo Buzz Post to Delicious Post to Digg Post to Facebook Post to MySpace Post to Ping.fm Post to Reddit Post to StumbleUpon

written by Feli \\ tags: , , ,