developers[]: Jens Fudge

Twitter: @JensFudge

Website: www.archersoft.dk

Editors Note: Jens is a great friend of mine, and one of the nicest guys on the planet.

I am a Danish developer also interested in Archery. I have two children and two grandchildren. I love working as a consultant and I love sharing knowledge.

What is your favorite programming language and why?

Object Pascal – Why.. obvious..It’s a really cool language that you can use for practically anything

What one piece of advice would you give to a rookie developer?

Read books written by developers, not books written by book-writers. Reasons are: developers write the pragmatic approach, book writers have only the theoretical approach and it can be hard if not impossible applying the stuff to a real world program. Also do not be afraid to ask experienced developers questions. There is a big fat chance they might answer.

What is the most difficult programming challenge you’ve ever encountered?

Lifting a Turbo Pascal program from 1987 to Delphi Tokyo. In fact the project was sort of already lifted to Delphi 2007 (pre-Unicode) but I had to take it further.

What is your favorite open source project and why?

Spring4D, is a large project. I (yet) only use a small portion of it, and that is some of the stuff made for Testing. It expands the DUnit/DUnitX frameworks with so much cool stuff that makes testing (almost) fun

What would you say to the developer that was you five years ago?

Add more tests.

What one book should every software developer read?

Tough question. Code Complete is extremely good, so are Coding in Delphi and More Coding in Delphi, so is Mastering Delphi, so are Delphi High Performance and Design Patterns in Delphi

What is the worst advice that you commonly hear given to developers?

I don’t think I hear bad advice… Maybe this one: To get around the “Circular references” compiler error, you just need to add to the uses clause in the implementation section in stead of the interface section. That is bad advice, as circular references are pure evil.

Describe your favorite or most memorable “aha!” moment that you’ve had as a developer.

When I first got my head wrapped around how events actually work

What is one weird or unusual thing you always do when you code?

I inherit from classes without expanding them. Example:
TPersons = class(TObjectList<TPerson>) end;
Nothing inside the class, just for my own readability

What have you done as a developer of which you are most proud?

I have had quite a few interns where the interns have had some “issues”, being as example very low self-esteem, very low confidence or other mental issues. I have worked with these individuals and given them so much confidence that they actually now lead a “normal” life with what ever implications that means.

Bonus Question: What is the question and the answer to the one thing that I should have asked you?

Q: How do you keep your knowledge current and up to date?

I myself attend conferences, buy books, read books, try to answer questions in forums but most importantly commit to give talks on topics I have little or no knowledge about, forcing myself to study on the topic so I in fact can give a talk about it to 200 plus developers