Alan Seiden on Development and Work-Work Balance
Paul Tuohy talks to development guru Alan Seiden about developing in PHP, the PHP for IBM i Toolkit, performance for developers and getting your work-work balance right.
Paul: Hi everyone and welcome to another iTalk With Tuohy. I am delighted to be joined today by one of the industry’s development gurus. I was trying to find a good way of describing you so welcome, Alan Seiden. Hi, Alan.
Alan: Thank you, Paul. I think it was Peter Drucker who said people say guru because they cannot spell charlatan. [Laughter].
Paul: Darn. They are onto us, Alan.
Alan: Thank you.
Paul: So Alan, of course, you will be well known to many of our listeners who have seen you speak at many user groups or at COMMON or any of the events, which of course is where we occasionally cross paths. Of course, you are best known for your work on PHP. I think in the last couple of years you are best known for your work on the PHP Toolkit.
Alan: Uh-huh. Yes.
Paul: Or should I say the PHP for IBM i toolkit.
Alan: It goes by many names. It can be XML toolkit. It would be the PHP toolkit for IBM i. The IBM i toolkit for PHP but any way you slice it, it really brings to us that integration that we like to have on IBM i where PHP, RPG, CL, we are all in the same family lets say if we are on IBM i.
Paul: So did you want to tell me a little bit on working on that, Alan, working on the toolkit?
Alan: Yeah, I would love too. It started for me probably maybe-well I have been using PHP since 2004, even before Zend came along with it using whatever that complied version someone put on there and found it really useful but what was missing was certain functionality that we need. So we needed more integration and there was a toolkit made by EasyCom that came along that let us call RPG programs in CL and so forth. Then later around 2011 Zend and IBM came out with this new or open-source toolkit that allowed calling RPG, CL, commands, data areas, looking at spool files, working with data queues and user spaces, everything like that so originally Zend came up with that at the front end and Tony Kearns came up with the back end called XML service. Tony’s vision of XML service was a universal program that could let us access these resources on the IBM i no matter how you connected to it, through a DB2 connection or HTTP or whatever. You were not limited by any way so we created this PHP front end for it, made it easy. So I got involved actually originally when the switchover came from EasyCom to the newer toolkit, I was asked by Zend to create the compatibility wrapper to make that switchover happen where we simulated the older functions. Then later we enhanced the new functions. I find people using it everywhere. Wherever I go, I find it being used and because it is open source, I don’t even know. I got to a conference, you know we got conference-I am sure this happens to you, Paul. You got to a conference and I looked at your presentation. I learned so much from it. I tried it or whatever. When you create some software that happens even more. I am using the toolkit. It’s great. We are calling 100 programs and we didn’t have to recreate your logic you know because it lets you leverage your existing RPG logic-
Alan: And other times it actually lets you use the people you have very well. Like I was at a client and they have a new PHP application. Their developers were not quite getting the business logic right. I said look, you like RPG. Why don’t you keep-use the RPG to create the business logic and keep it in your own hands so you know everybody can be part of the team.
Paul: So was that sort of the first time, Alan, for you that you had worked at that level of software? I mean prior to that would you have been more of an application guy or have you always had a penchant-
Paul: Down to like the tooling level?
Alan: That is a good question. I really was more of an application guy but it happened from time to time I would create my own middleware to make a process easier. In this case with the toolkit, I was one of the earlier users of the new toolkit and asking Tony questions, getting into it and knowing it so it was deemed that I was the biggest expert in the world [Laughter] because I knew enough about it. Actually there are still various mysteries, which is good because I was a user of the toolkit before I was a developer of the toolkit so that means I knew where some of the confusing points were and I tried to bring that out in my presentations. As we go forward, I hope I will even be able to make things a little easier to use it also but mainly as an education question. I have written these articles, give talks, and so on.
Paul: Well actually speaking of giving talks, Alan, and just switching topic a little bit because recently we crossed paths at OCEAN, at the OCEAN conference and as I am sure happens to you as well, one of the annoying things about when you are a speaker at a conference is you will always notice that there is a session that you would like to attend and it is always on when you are speaking [Laughter]. That was the case with the presentation that you were giving with Dawn May on IBM Performance Tools for Developers. That is a topic that just quite fascinated me. Now I am used to doing performance stuff for database, you know from a development point of view and when I have got some imbedded SQL program that is eating up the system and I got performance that way. Can you maybe talk about that a little bit?
Alan: I would be happy to. Yeah, each of us tends to have a bias of where we go to for performance, looking at performance and it is usually the area of our expertise so DB2, someone who is experienced with DB2 like yourself, you would go there first. I have had my own experience with DB2 and also would tend to go there to those tools as well as I have my PHP performance tools in Zend Server such as now we have Z-Ray, which is great looking at a page level what is happening or looking at the monitoring or tracing tools or debugging, and so on. So everyone has their-or a system administrator will go Work with Active Job (WRKACTJOB) and say what the CPU is but really our view is really limited when we do that. I have found that to be a true really competent consultant on the issue of performance with my PHP, I need to understand the whole system. I knew that meant seeing things that you could not see with the naked eye if you will such as Work with Active Job. There is so much more going on and the IBM i has all kinds of workload on it. It’s not just one application for everyone so and IBM i is integrated. The fact is that IBM i system itself knows everything that goes on and that is why I was fascinated and wanted to learn these tools. I contacted Dawn May and said what should I do? She said okay look at the performance frequently asked questions. She was very nice with her time and told me that. I really enjoyed and I found it helped me a lot to do this. It is so easy. People think it is obscure or strange. It isn’t. You don’t have be an expert to get started. It is nice easy charts and graphs. That is when I said well I would like to-once I started using these tools, well I would like to do a talk with Dawn at conferences, a session because Dawn explains the details of how it all works and I can say here is how I have seen it. Here are my specific experiences and how I applied it and put it together. It has been really nice and at our last talk, Paul, at OCEAN someone in the audience said you know we are all system administrators here. This is something developers should see also so they can be cognizant of performance. It is not so specialized. It’s not so arcane. Just go to one of Dawn’s sessions. Actually I think Stacy Benfield has something. She is coming up. She is an IBM person too who is very good. Look for her name coming up. I think she is getting out of her lab a little more [Laughter].
Paul: Oh. IBM letting another one out of the lab. Oh dear.
Alan: I know. I know. They probably shouldn’t but she has a nice personality. She will be-she will survive but yeah so I think it is great. I think a lot of these things, DB2 also, I think it is good for those on the speaking circuit to show how we apply some of these things. It’s not theoretical, that it’s really very useful and based on feedback from real users and here is what we do with it so that’s where I stand.
Paul: So I was reading just a little bit on your website, Alan, where you were talking about this, about the performance tools and that. For example, this thing of the Performance Data Investigator-
Paul: I had never heard of. Is that bad?
Alan: Well I think it is our bias that we shut it out of our minds. That it’s for admins. It does not-either that or it is IBM like-I do not know. We shut it out somehow and that is why I thought-that is why I wanted to spread the word about it, myself included. We are shutting it out including that whole Web-based navigator. Some of us just-we think it’s not for us. It’s development oriented. I said this is for us. It is for us. So the performance-the fact that it’s free. I mean it is-Maybe we cannot believe our ears when IBM says something is free and that is the problem. We just don’t believe it and it is. Performance Data Investigator is totally free and there is another tool-you use the Performance Data Investigator to find in basic terms what is happening on the system. You can even go back in time. It’s not like logging where you have to turn it on. You just oh, something happened. Joe says something happened yesterday at 3:00. The system was slow. Well go back. The system is capturing data; Collection Services are capturing data surreptitiously, quietly, and efficiently. By average I think it was two weeks if I remember, ten days to two weeks so you will have it. Go to yesterday at 3:00; what happened? Okay I see CPU was not spiking but some kind of disk waits were spiking or maybe it’s journaling that was spiking and you can find out. Then if you want to go deeper, then you can use the tool like Job Watcher, which is not free but it is not expensive and it take you even down to the second by second level and capture a lot of things so I find it fascinating and even-you know detective is kind of fun when you get better at it so.
Paul: So is-Performance Data Investigator part of the Navigator in like the Web interface called Navigator.
Alan: That’s correct. That’s right.
Paul: Okay. I got to go and have a look at that. I seriously do. So one other thing, Alan, just as we were chatting briefly before we started recording. You used a lovely expression that I like which is about your work-work balance. [Laughter].
Alan: Yes. Yeah, work-work balance. Those of us who are consultants and speakers, you know it’s like I am balancing the different types of aspects of our careers which is speaking, developing or consulting, everything else. I also have my sideline, which I am a practitioner of the Feldenkrais method. It’s a method of movement and awareness that helps posture and feeling better, begin more efficient with movement and just feeling good in general so that is my little other career. That’s why it is a work-work balance but in general it’s also just not-it’s doing what we need to do in a field while it’s growing is also very demanding, that we are constantly having to learn new skills. Always learning, growing, and progressing, and moving along while still doing whatever job we were probably doing before. Like I meet RPG developers who would like to try some PHP and then they are kind of held back because they are so good at what they do already, they are required to keep doing it. We got to do this without staying up too late, without sitting too much, without eating at our desk too much, without hurting our health and dealing with our personal relationships too. So it is something I work on myself and something we can probably help each other with. For instance, I think I do better when I discuss-when I talk with people on the phone rather than emailing all the time. It’s sort of more efficient. It makes me feel good to talk to people and have more connection and I think everyone benefits more so like this conversation that we are having now, Paul, is great. It doesn’t have to always be in public but I say pick up the phone. I am also using a headset and standing up. I don’t have to keep sitting all the time. I can stand up and talk so get a headset, stand up and walk around, keep hydrated, keep your bedtime. Keep that-try to balance it so you-you try to make it enjoyable what you are doing and you can have others enjoy it too and have a nice career in life.
Paul: Yeah. I find it because-I have always found it a thing when people talk about a thing as you said it where people used to talk about work-life balance. It was always nearly a thing as if they were two different things.
Paul: You know I have work and then when I am not working, I have a life. I think for most of the people I know-I mean they are all part of the same thing. I mean your work is part of your life.
Alan: Yeah and when you are working like if I am looking at the screen, it’s like I am shutting everything else out in my perception. It is only this two-dimensional screen I am looking at but I am still breathing. My heart is beating and you know so on so it is like-you are never really separate from one or the other. Is that too deep?
Paul: No. That is-I understand perfectly.
Paul: It is-actually, Alan, I think that is a good deep thought to leave the conversation on, to leave people thinking with that.
Paul: So Alan Seiden, thank you very much for taking the time to chat with me. Thanks everyone for listening in. Catch you all on the next iTalk.
Alan: Thank you, Paul.
Like what you just read? To receive technical tips and articles directly in your inbox twice per month, sign up for the EXTRA e-newsletter here.
comments powered by