Click here to Skip to main content
15,867,594 members
Articles / All Topics

A Coder Interview With Paul Griffin

,
Rate me:
Please Sign up or sign in to vote.
4.96/5 (76 votes)
30 Apr 2014CPOL6 min read 72K   14   40
Welcome to our continuing series of Code Project interviews in which we talk to developers about their backgrounds, projects, interests and pet peeves. In this installment we track down Code Project member Paul Griffin.

Welcome to our continuing series of Code Project interviews in which we talk to developers about their backgrounds, projects, interests and pet peeves. In this installment we track down another prominent Code Project member Paul Griffin.

Paul joined The Code Project fairly recently, but has already amassed an almighty reputation by way of helpful Q&A answers and witty Lounge banter.

Who are you?

I'm Paul Griffin, and I live just outside Ystradgynlais in Powys, Wales. Fortunately for me, I am self-employed and work from home, so my daily commute is about six feet and I rarely complain about traffic congestion on the way ... As a self employed one-man band I have whatever job title I feel like on the day, but generally settle for "Software Engineer" or "Music Critic for Exchange & Mart" if I am at a social event – it reduces the number of conversations that die immediately or continue with "can you fix my computer?"

What do you do?

I develop software for Windows, web sites and embedded devices – the later being my real love. As a result, I regularly use C and Embedded C++, C# and various assemblers, although I also cope OK in Visual Basic. For Windows, I use the .NET Framework almost exclusively, though I started with V1.0 of MFC and C++. (I wouldn't touch it with a ten foot pole now.)

As far as clients go, I can't reply for the usual reasons, but I have been involved in development of industrial inkjet printers, listen-only LAN cards, financial information data collection, ultrasonic thickness detectors, and a wide variety of other devices and applications.

What is your development environment?

My hardware and software is pretty much out-of-date: a dual-processor Xeon 2GB HP box, with about 2TB of storage, plus twice that in NAS backup storage over the gigabit section of the house network, and a single monitor. I use an Epson printer that is full of cat fur, but my window overlooks the apple tree outside which is older than I am.

Input devices are a Logitech Trackman upside-downy mouse (because I love 'em) and a Wacom tablet with pressure sensitive pen for graphics work.

Software-wise I use Visual Studio 2008 as I haven't had the need yet to move to Visual Studio 2010, although I installed it about six months ago. Other software: OpenOffice, PaintShopPro 9 (the last version before Corel got their hands on it, bwwwaaaa), SVN, SQL Server 2008 R2, Chrome, PSPad programmer's editor and Expresso fill most of my needs.

I updated my hardware about a year after I originally answered this, but I didn't update this!

So... It's still not state of the art - or even close - but it's now a Acer X1920: dual core E6700 processor, 4Gb Ram, 1TB HDD, and the integrated video was disabled in favour of a GeForce 8400, with an external USB3.0 2TB and Windows 7, and the NAS is now 4TB of RAID5. The printer has less cat fur, and I moved my office into what used to be the freezer room downstairs so I don't overlook the Apple tree any more but I am closer to the front door, and it has a more "office" feel than the previous location. I also updated to twin monitors in Feb 2013 and now run two 22"ers, one in Portrait for Browsing / reading / writing documents, and one in Landscape for Visual Studio. Which is now 2010 rather than 2008. I'm also considering updating PaintShop Pro to the a 64 bit version, but that means dealing with Corel so I'm still very resistant.

Open Office was replaced with Office 2010 as it was just a bit too...amateur, and Outlook express wouldn't work under Win7/64. Word I still hate, Excel I still love, and the ribbon is still a PITA.

I've also added Sil to my "really useful tools" list: See the Intermediate Language for C# Code[^] and reluctantly agreed to put up with Steam in order to run Duke Nukem Forever. But...it's a bit too linear compared to the original and I've not finished it yet, so I suspect I didn't get the best part of that deal :laugh:

What new tools, languages or frameworks interest you?

At the moment, I'm sticking to C# for Windows and web development. I dabbled with WPF, but just didn't get the feeling it was mature enough. The cloud I am avoiding until it matures and you can tell what is going to happen with it. I remember mainframe days, and don't really want all my data out of my control!

What is your coding pet peeve?

Coding pet peeve? The lack of education about SQL injection attacks in computing courses. Criminal.

The use of default names for controls. Stupid!

Leaving the comments for later because "I'll come back to it…". Grrrr!

Favorite naming convention? I try to stick to camel case, but Hungarian was soooo useful that I find it difficult to stop – I still automatically name my buttons "butXXX", integers "iXXX" and so forth. I'll try harder to stop!

Indentation? Easy: indented to block, with a block definition everywhere a single statement is allowed, so every if, every for has a block, even if it contains only one statement. Caught by that in the past, and not getting caught again!

if (condition)
   {
   statement;
   }

I don't like K&R style as I consider it inconsistent: If you would indent a single statement, why not the whole thing? But I really hate the 1TBS style with a passion!

How did you get started programming?

I have to whisper this bit: Cobol on an ICL 1900 running GEORGE 3, with punched cards, at university. Six punch machines, 600 students, one machine which could print on the cards. Psychotic computer operators who actively hated students (can't say I blame them).

How has the developer community influenced your coding?

The developer community is full of generous, intelligent people who will give their time and effort to help others along. It's also full of arseholes who couldn't find their own backsides with both hands and a map. Telling the difference is the big problem.

In ten years, I hope to be here, pretty much, doing much the same as I am now. I started as a Junior Programmer, and worked my way up to MD through working at three companies. Then I broke my collarbone falling off a brand new Ducati the shop lent me for the day, developed a frozen shoulder, and was off work for four years because I couldn't go anywhere without being in agony, and couldn't use a computer. At the end, I realised that I didn't need the stress I hadn't realized I was under and decided to take it easier. I'm happy where I am, so don't want to change unless I have to!

What advice would you offer to an up-and-coming programmer?

Develop a thick skin, a sense of humor, and listen to your users. After that, learn to program embedded devices from scratch in assembler. You will understand and appreciate IDEs and debuggers a whole lot more!

History

29 Apr 2014: Hardware and software updated.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
CEO
Wales Wales
Born at an early age, he grew older. At the same time, his hair grew longer, and was tied up behind his head.
Has problems spelling the word "the".
Invented the portable cat-flap.
Currently, has not died yet. Or has he?

Written By
Software Developer CodeProject Solutions
Canada Canada
The CodeProject team have been writing software, building communities, and hosting CodeProject.com for over 20 years. We are passionate about helping developers share knowledge, learn new skills, and connect. We believe everyone can code, and every contribution, no matter how small, helps.

The CodeProject team is currently focussing on CodeProject.AI Server, a stand-alone, self-hosted server that provides AI inferencing services on any platform for any language. Learn AI by jumping in the deep end with us: codeproject.com/AI.
This is a Organisation

4 members

Comments and Discussions

 
PraiseThank you! Pin
James McCullough12-Apr-16 4:24
professionalJames McCullough12-Apr-16 4:24 
GeneralRe: Thank you! Pin
OriginalGriff12-Apr-16 4:29
mveOriginalGriff12-Apr-16 4:29 
GeneralMy vote of 5 Pin
Abhipal Singh29-May-15 22:18
professionalAbhipal Singh29-May-15 22:18 
QuestionI like it Pin
joginder-banger22-Dec-14 20:25
professionaljoginder-banger22-Dec-14 20:25 
QuestionMy vote of 5 Pin
Manikandan105-Jun-14 21:37
professionalManikandan105-Jun-14 21:37 
Question[Joke] Are your rep fishing? Pin
DaveAuld30-Apr-14 1:31
professionalDaveAuld30-Apr-14 1:31 
AnswerRe: [Joke] Are your rep fishing? Pin
OriginalGriff30-Apr-14 2:54
mveOriginalGriff30-Apr-14 2:54 
QuestionVery Nice Pin
Rahul VB5-Apr-14 7:23
professionalRahul VB5-Apr-14 7:23 
GeneralMy vote of 5 Pin
Mohammed Hameed10-May-13 0:06
professionalMohammed Hameed10-May-13 0:06 
General5++ Pin
AmitGajjar19-Mar-13 20:53
professionalAmitGajjar19-Mar-13 20:53 
GeneralMy vote of 5 Pin
CPallini22-May-12 1:56
mveCPallini22-May-12 1:56 
GeneralMy vote of 5 Pin
ProEnggSoft29-Feb-12 16:25
ProEnggSoft29-Feb-12 16:25 
GeneralMy vote of 5 Pin
Rahul Rajat Singh17-Feb-12 1:32
professionalRahul Rajat Singh17-Feb-12 1:32 
GeneralGreat Pin
Wonde Tadesse14-Dec-11 16:24
professionalWonde Tadesse14-Dec-11 16:24 
Question5 too Pin
Luc Pattyn7-Dec-11 16:53
sitebuilderLuc Pattyn7-Dec-11 16:53 
AnswerRe: 5 too Pin
OriginalGriff7-Dec-11 21:37
mveOriginalGriff7-Dec-11 21:37 
GeneralRe: 5 too Pin
Luc Pattyn8-Dec-11 8:49
sitebuilderLuc Pattyn8-Dec-11 8:49 
GeneralRe: 5 too Pin
OriginalGriff8-Dec-11 21:50
mveOriginalGriff8-Dec-11 21:50 
AnswerRe: 5 too Pin
Luc Pattyn8-Dec-11 21:52
sitebuilderLuc Pattyn8-Dec-11 21:52 
GeneralMy vote of 5 Pin
Rhuros10-Nov-11 3:23
professionalRhuros10-Nov-11 3:23 
GeneralRe: My vote of 5 Pin
OriginalGriff8-Dec-11 21:51
mveOriginalGriff8-Dec-11 21:51 
GeneralRe: My vote of 5 Pin
Rhuros8-Dec-11 22:13
professionalRhuros8-Dec-11 22:13 
GeneralMy vote of 5 Pin
S Houghtelin21-Oct-11 4:45
professionalS Houghtelin21-Oct-11 4:45 
GeneralMy vote of 5 Pin
linuxjr26-Sep-11 3:46
professionallinuxjr26-Sep-11 3:46 
QuestionNice job Pin
Slacker00722-Sep-11 9:03
professionalSlacker00722-Sep-11 9:03 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.