AS400 Programming is Killing the IBMi - Part 3

AS400 Programming is Killing the IBMi - Part 3

Micromanagement. Ok, so I know that this isn't a programming practice and that micromanagers exist in all walks of management. However, It is apparently a fairly common trend in the IBMi world. Why do I say that? Since I started writing these articles, you wouldn't believe how many have replied and said, "I would love to do... but management said I couldn't." Every time my mouth just falls open in shock and horror. Now, I am not talking about something like rewriting an entire system using python on the IBMi. We are talking about things like using RPG Free, embedded SQL, and service programs. Let me relate to you an actual conversation that I had. Now I am going to change all the names to protect the guilty and the innocent. Jake is the developer(innocent) and Bob is the manager(guilty).

Jake: Hope things are going well for you. Are you building web faces from the I as well? I want to start learning that part as well.

Me: Yeah, there are several ways to do it. You have stuff like react, vue, ejs, erbs etc... blah blah... And yes, things are going well right now. How about you?

Jake: Oh ok. I am working at XXXXXXXXX company... it's so old school here. I have to go backward in my development practices because they don't know embedded SQL and ILE. I have a project that has been pending for a while because I am using a service program in it.

Me: Oh my. Why is using a service program holding up your project?

Jake: My boss, Bob, doesn't know how to use it. He led me to believe that I could start writing code that way when I was interviewing, but he is scared of it because he doesn't know it.

Me: There are tons of resources for learning it. Also, why does that matter? The point is that the project gets done. He shouldn't be worrying about that, he has management stuff to do.

Jake: He is the IT manager. He reviews all of the code and gives the ok for it to go to production. He wants us to code the callp even though it isn't needed anymore. It's really why no good programmer ever stays here.

Me: I think I have a topic for an upcoming article.

Now, I am all for Code Reviews. I think they can be super helpful, but this isn't that kind of a Code Review. This is micromanagement to a T. There is no reason for management to dictate how a project gets done. That's not really their job. Their job is to help the team grow the skillset, and provide direction for where the project needs to be in the eyes of the business. However, in the IBMi(and predecessor) world, management was promoted from the developer ranks and this can happen. Like Bob, they stop learning the new practices, because they have actual management work to do. Yet, they still want to be in control of the development of the code.

Bob stop it. Just stop. Your employees see that you can't keep good developers because of this. Implement a code review practice where your most senior developers review the code. This means that more than one person has signed off on the work. It frees you up to help grow the team, in fact, this will grow the team. They will better understand on a broader scale what is happening in different parts of the codebase. This means if Jake is out on vacation then Cindy can step in and fix a bug in production without the need to call Jake. They will also see those new programming practices and ask questions. They will grow in their development skills. They will get faster and more productive. The business is going to I.T. moving faster. Perhaps they will stop looking at the IBMi like it is an old dinosaur. And Bob, it will all be because of a change that you made. You decided to stop killing the IBMi. Good job Bob.


"Now, I am all for Code Reviews. I think they can be super helpful, but this isn't that kind of a Code Review. This is micromanagement to a T. There is no reason for management to dictate how a project gets done. That's not really their job. Their job is to help the team grow the skillset, and provide direction for where the project needs to be in the eyes of the business. However, in the IBMi(and predecessor) world, management was promoted from the developer ranks and this can happen" more true words have never been spoken...

Daniel--now you are starting to get it. Individual developers, or contractors don't get to make the decisions that have crippled Power i application development. Management above Bob is to blame. Software has a shelf life, and technology can blow right past it. Those companies that fail to invest in the technology that runs their business is a failure of vision by those steering the company--not line managers and developers. PS Mr. Vaughn--no disrespect, but being close to retirement has little to do with it. It has been my experience that ignorance doesn't have an age limit.

Like
Reply

Things can also go the other way until you end up with too many flavor-of-the-day apps that were created by developers who came and went so your shop has no consistency. It's a delicate balance as an IT director. Somewhere in the middle wouldn't be bad. However for Bob he needs to stop making his devs use RPG II :-)

Like
Reply

I’ve known a lot of Bobs. They have indeed crippled the future of the IBMi. Bobs being close to retirement was a driving factor for being a Bob. Bobs being promoted up from non-tech departments within the company to learn just enough programming to grab a managers seat were other reasons for being Bob. Bobs who knew no programming but knew other Bob-types within the org helped put them in a management role and distinguish them as a full fledged Bob. I’ve met a lot of Bobs. Thanks Bob. This week after 20+ years I have started my primary skill transition by learning .Net Core.

To view or add a comment, sign in

More articles by Daniel Long

  • SQL vs RLA - Round 2

    Wow, thanks so much for your feedback and response to the last article. That was so cool! In the last article we found…

    4 Comments
  • SQL vs RLA

    As RPG programmers processing database records is one of our highest priorities. Doing it well and efficiently can lead…

    34 Comments
  • ALIAS: Not just for a Superhero

    My grandma used to say that the only thing good about the good old days..

    5 Comments
  • Free IBMi UI Testing

    I am not a fan of DSPF for UI, however, there are still tons of them running around in the wild. So, we can't just…

  • Clean Your Code Up!

    Let's talk about cleaning code. How do you clean code? What is clean code? Bob Martin(Uncle Bob) is the guru on all…

  • Modernization Of Code - Part 1

    I thought it might be kinda nice to try something with you all. Let's modernize a system together.

    1 Comment
  • Abstraction with Open Access

    Ok. So I came across a problem that I am sure you likely have come across as well.

    2 Comments
  • Featuring Feature Flags

    Stop me if you have heard this one before. You are ready to install the latest feature you have been working and the…

    1 Comment
  • Thread Safety - Not just for sewing machines

    So let's talk about something that happened to me on a recent project. I stepped into a thread safety issue and made a…

    2 Comments
  • Why Should You Refactor Working Code?

    Let's be honest we all have code that is terrible to read, but it still works so it is still running. The problem with…

    3 Comments

Others also viewed

Explore content categories