• Security incident: ISF was recently accessed by intruders. Please change your password, and change it anywhere else you used it. Read more

Dear Users... (A thread for Sysadmin, Technical Support, and Help Desk people)

Status
Not open for further replies.
In case it's of use a friend wrote this a few years back. Amongst other things it checks when certs will expire from a list of websites.
https://github.com/brabster/website-checker

Well, now, we have some of those tools now for our external certificates (provided by our external cert vendor). Some departments just don't take advantage of anything that's out there.

I just get annoyed when people don't even go through the motions :)
 
The basic idea is that there are two broad paradigms for software development. The older paradigm, prevalent for many years, went something like this:
1. Define requirements.
2. Spend a year developing software to meet those requirements.
3. Release the software all at once.
4. Discover all the bugs and all the missed requirements and all the implemented requirements that nobody actually wanted.
5. Define new requirements.
6. Spend a year...
Etc.

This paradigm was called "waterfall" software development, for some reason. Probably because you can visualise the process as a cascade of activity, Requirements > Development > Discovery.

The waterfall paradigm made a lot of sense in the days when software came on physical media. You'd buy a disk, insert it in the computer, install the software, and use it warts and all until the new version came out next year. Then you'd upgrade, and hope that the new version had more useful features and less bugs than the previous version. Mostly this worked.

But as we moved into an age when more and more software was running as a service over the Internet (Turbotax Online, for example), software companies realized they didn't necessarily have to wait six months or a year for a new version. They could fix bugs and add features as they were discovered. You could update your service every six weeks, or every six days. Or every six hours. And being able to produce beneficial updates quickly gave you an advantage over your competition.

But to do that well, a new paradigm was needed. The new paradigm needed to have a system for breaking down software development into small tasks that could be completed quickly, tested quickly, and released quickly. And, in order to be valuable, the new system had to link these tasks to specific tangible benefits to your users.

The implications of such a system are literally paradigm-shifting. Instead of your software developer laboring for a year on a massive code base, making hundreds of changes without really knowing if they're useful or wanted or even simply not harmful; your software developer can labor for a week on something he knows is desirable, and at the end of the week he can test it and know that it's working as intended. Shortly thereafter, that improvement that customers actually want - the bug fix, the new feature - can be released, and customers can be made happier thereby. This is, in a word, *awesome*.

And this awsomeness hinges on knowing what customers want. You know there's a bug that affects database performance, but have your customers even noticed that? Or are they all clamoring for a delete button that warns them before they delete stuff? Gathering that customer feedback, and using it to decide which development goals to prioritize, is critical to the success of the system.

This new paradigm is called "agile" software development, probably because it's the same basic cycle of activity as the waterfall, but done at a much faster pace. Customer feedback about what they're trying to do and what they expect from your software is called "user stories". The phrase "recording user stories" is the agile paradigm's term for defining requirements.

A mature agile development team will usually have a Product Owner assigned or embedded with the developers. Their job is to gather the user stories, prioritize them, and bring them to the developers. The developers, armed with the knowledge of what the users want, are then responsible for breaking the requirements down into incremental development tasks that will produce real improvements as each one is completed.

One side effect of the agile paradigm is that it requires an acceleration of the entire software development lifecycle *and* of all the tooling required to get a piece of code from the developer's head onto the customer-facing website. When I started out in systems administration, I could leave a software QA server down for a week or two while I worked on more important tasks. What's a week or two of QA downtime, on a year-long development cycle?

But when that same cycle is supposed to run multiple times a day, and the developer has committed to having some good thing ready for customers by the end of the week, even an hour of QA downtime really hurts. So the entire pipeline has gotten more robust, more efficient, more fast.

And more automated. When you're cycling through the entire process multiple times a day, you can't just hand a guy an installer and some instructions and tell him to upgrade the server so they can test the new version. Instead, you fill your pipeline with robots that do all that automatically, on the fly, all day every day. Instead of telling your quality engineer to manually step through all of the testing processes, you tell him to write automated testing scripts using a standardized suite of tools, so that his expertise can also be applied continuously by robots, without having to wait for human intervention.

And that's basically my job: Administering an automated software delivery system, so that my developers can drop their code into a code repository, sit back, and let the robots do their job.

tl;dr - it means you start by finding out by what your customers actually want, so that when you give them stuff it's stuff you know they'll be happy to get.
Complements on a good summary of Waterfall vs Agile.

To the point of this thread, IT folks can likewise be bone-headed.

The company I am currently with claims to be working toward Agile, because that's what all the cool kids are doing. After three years of moving to Agile, we are more waterfall than before. If waterfalls flow up, that is.

In point of fact, we now have new Project Managers that don't understand the job, the product, or the existing software. They insist on gathering requirements and making promises to users without involving the programmers (who know the job, the product, and the software), or QA (who likewise know the job, the product, and the software), or anyone else who knows anything. Oh, and they are having off-shore programmers do the work, apparently to ensure that no one in the development cycle knows anything about how the job or the product.

As a result, they are doing a world-wide roll out of a new Order Processing system... created from scratch (!). It was a 1 year project that would be rolled out to 20 (of 70) countries initially. Cool.

The 1 year project started 2.5 years ago. They only need 6 more months [again] to roll out Phase 1. Phase 1 has limited baseline features, and will be published to 1 country when it is ready. Phase 1 was introduced as a concept about 1 year ago. They have quadrupled the off-shore teams to get this subset of the original done.

Us folks working on the 'legacy' systems were supposed to be phased out in 3 years, because all the systems would be moved off of our box. 2.5 years later, we have actually added countries and functionality.

We legacy folks shake our heads and smile. Most of us will retire before we are phased out.
 
Complements on a good summary of Waterfall vs Agile.

To the point of this thread, IT folks can likewise be bone-headed.

The company I am currently with claims to be working toward Agile, because that's what all the cool kids are doing. After three years of moving to Agile, we are more waterfall than before. If waterfalls flow up, that is.

In point of fact, we now have new Project Managers that don't understand the job, the product, or the existing software. They insist on gathering requirements and making promises to users without involving the programmers (who know the job, the product, and the software), or QA (who likewise know the job, the product, and the software), or anyone else who knows anything. Oh, and they are having off-shore programmers do the work, apparently to ensure that no one in the development cycle knows anything about how the job or the product.

As a result, they are doing a world-wide roll out of a new Order Processing system... created from scratch (!). It was a 1 year project that would be rolled out to 20 (of 70) countries initially. Cool.

The 1 year project started 2.5 years ago. They only need 6 more months [again] to roll out Phase 1. Phase 1 has limited baseline features, and will be published to 1 country when it is ready. Phase 1 was introduced as a concept about 1 year ago. They have quadrupled the off-shore teams to get this subset of the original done.

Us folks working on the 'legacy' systems were supposed to be phased out in 3 years, because all the systems would be moved off of our box. 2.5 years later, we have actually added countries and functionality.

We legacy folks shake our heads and smile. Most of us will retire before we are phased out.

Not just with software development. I was only recently able to decommission my last 32-bit, Windows 2008 Server.

We had a guy retire a few years back. They had started on retiring a storage array for one system when he was hired. It did get retired before him, though. By a month.

We still have systems that MUST have Java 6 to operate.

Heck, it's only been about 4 years since we finally got one departments application (one that's central to our business) off a FoxPro database.
 
Last edited:
You are both correct, they were often security devices - either to allow hardware to be connected or software to run.

These days the most common use for a dongle is as a mobile data connection.

Now you've made me curious. I tried to think of something and just drew a blank. Could you give an example maybe?

You wouldn't confuse it with the pass through function of the dongle, would you?
 
IBM product?

.


CA.


I wrote up the whole process as we were working through it step by step, and the CA tech asked me if he could have my document. I said sure, but... it still doesn't work so I'm not sure how useful it is. the document contains 28 steps (SO FAR).
 
CA.


I wrote up the whole process as we were working through it step by step, and the CA tech asked me if he could have my document. I said sure, but... it still doesn't work so I'm not sure how useful it is. the document contains 28 steps (SO FAR).

I heard from some ex-CA in '93 guys that some companies, when buying from smaller companies, would add a clause that if the small company was bought by CA they would be compensated as that would mean support and service would fall off a cliff.

None of the CA products I've used impress me. Ops/MVS, AutomationPoint etc
 
CA.


I wrote up the whole process as we were working through it step by step, and the CA tech asked me if he could have my document. I said sure, but... it still doesn't work so I'm not sure how useful it is. the document contains 28 steps (SO FAR).

Ahhh...yes. CA. They were the ones that gave IBM the original idea, I think :).

I am soooo happy to say we managed to break the blood pact with CA. We now do more with products that cost about 1/10th as much.

To be fair, both CA and IBM make some good products (IBM moreso, I think CA only had a couple winners), but they tend to be administratively demanding. If you're a big company, and can dedicate a person or a team to the products, it works great; the complexity and flexibility pretty much let you make it do whatever you need. But for us, a mid-size company, where that CA product is only one of the dozens of systems I'm responsible for, I don't have the kind of time it takes to learn all those products to that depth and configure them. So we actually get more out of solutions that may be less capable in theory, but are easier to administer and manage for our limited resources.
 
Last edited:
CA has now been bought by Broadcom. Will be interesting to see how that affects things.
 
<snip>

tl;dr - it means you start by finding out by what your customers actually want, so that when you give them stuff it's stuff you know they'll be happy to get.

Thank you very much for taking the time to give such a clear description. I remain to be convinced that the new way of doing things is necessarily better than the old, but it's not something I'm going to worry about since I haven't done any development this millennium and I'm unlikely to do any serious work in IT again. The 'tl;dr' description is pretty much what I was taught we should do when I did my BSc in Computing (40 years ago), find out what the customer wanted first; we called it systems analysis in those days. Plus ça change...
 
Complements on a good summary of Waterfall vs Agile.

To the point of this thread, IT folks can likewise be bone-headed.

The company I am currently with claims to be working toward Agile, because that's what all the cool kids are doing. After three years of moving to Agile, we are more waterfall than before. If waterfalls flow up, that is.

In point of fact, we now have new Project Managers that don't understand the job, the product, or the existing software. They insist on gathering requirements and making promises to users without involving the programmers (who know the job, the product, and the software), or QA (who likewise know the job, the product, and the software), or anyone else who knows anything. Oh, and they are having off-shore programmers do the work, apparently to ensure that no one in the development cycle knows anything about how the job or the product.

As a result, they are doing a world-wide roll out of a new Order Processing system... created from scratch (!). It was a 1 year project that would be rolled out to 20 (of 70) countries initially. Cool.

The 1 year project started 2.5 years ago. They only need 6 more months [again] to roll out Phase 1. Phase 1 has limited baseline features, and will be published to 1 country when it is ready. Phase 1 was introduced as a concept about 1 year ago. They have quadrupled the off-shore teams to get this subset of the original done.

Us folks working on the 'legacy' systems were supposed to be phased out in 3 years, because all the systems would be moved off of our box. 2.5 years later, we have actually added countries and functionality.

We legacy folks shake our heads and smile. Most of us will retire before we are phased out.
In defense of IT folks, this sounds like more of a management problem. IT managers are not typically IT folks themselves - even if they may have been at some point. And Project Managers (agile or otherwise) are almost never IT folks at any point in their career.

I have been fortunate in my exposure to Agile, in that most of the Agile folks I've worked with - Project Managers, Product Owners, Scrum Masters - have been good folks. They haven't been very technical, but they have been enthusiastic and supportive process enthusiasts. In general, a good Agile person will recognize each contributor's specialty and role. They seem to see their job as encouraging and maturing a process that enables the technical folks to apply their expertise in productive and satisfying ways. Agile project management, properly understood, is very much a "servant leader" proposition.
 
Thank you very much for taking the time to give such a clear description. I remain to be convinced that the new way of doing things is necessarily better than the old, but it's not something I'm going to worry about since I haven't done any development this millennium and I'm unlikely to do any serious work in IT again. The 'tl;dr' description is pretty much what I was taught we should do when I did my BSc in Computing (40 years ago), find out what the customer wanted first; we called it systems analysis in those days. Plus ça change...
It's the rate of change that matters, I think. The basic principles have been around forever. What Agile does is tighten that feedback loop as much as possible.
 
In defense of IT folks, this sounds like more of a management problem. IT managers are not typically IT folks themselves - even if they may have been at some point. And Project Managers (agile or otherwise) are almost never IT folks at any point in their career.

I have been fortunate in my exposure to Agile, in that most of the Agile folks I've worked with - Project Managers, Product Owners, Scrum Masters - have been good folks. They haven't been very technical, but they have been enthusiastic and supportive process enthusiasts. In general, a good Agile person will recognize each contributor's specialty and role. They seem to see their job as encouraging and maturing a process that enables the technical folks to apply their expertise in productive and satisfying ways. Agile project management, properly understood, is very much a "servant leader" proposition.
My problem isn't with Agile, but as you correctly named: horrible IT management.

My previous position was with a company that was a true Agile shop, and I felt about my team as you felt about yours. It was well organized and well planned and generally well executed. Teams generally consisted of a Scrum Master (who worked on 8-12 teams), Project Manager (also 8-12 teams), Product owner, 2 QA, 2-3 Developers, and a documentation person. The whole team was involved from beginning to end, and we put out a good product. The experience showed me what Agile can do.

But, as the thread is more about bonehead users and IT departments, I shared the horror story, and not the rom-com. ;)
 
I would argue about... half my time is trying to pull what the actual problem out of a user that only wants to keep saying some minor variation on "It doesn't work" over and over.

That is truth, however translating corrective actions is a challenge. In terms they use and understand, which I accept as the nature of the work.

Today I had a hall monitor who has a student assist in the translation.

Then there are those who don't follow instructions and seem to do whatever they want.

Me: Please Click on the Start button and then on the Start Menu select Devices and Printers, now towards the top of the screen you should see Add a Printer

User: (paraphrase) I did whatever thing I usually do, it doesn't look like that
 
Indeed. This is something that I'm usually very good at. That particular call stumped me, though. How are you with strong accents?

We have a lot of native french speakers immigrating from Africa and have started Dual Language French classrooms. I was working with someone who spoke english well, but was using french Gmail
One of my greater disasters was trying to communicate signing out of a personal Gmail, and they kept asking 'I should disconnect?"

I was thrown and needed a time out
 
That's not really her fault, of course.
It's the old "whisper the mystical incantation" idea that seems to pervade some places.

Either that or Python:
"One of cross beams has gone out skew on treddle."
Right, not her fault.
 
Right, but it's not hard to learn the correct names for things. This particular one confused me because I'm old enough to remember the original meaning of the word "dongle", which was a pass-through device that plugged into the serial port of the computer that allowed proprietary hardware to operate. It was some time before I remembered that people use the word to refer to wireless broadband modems.
Surely, dongle applies to lots of USB devices these days?

I'm not computer illiterate, but I don't recall "dongle" before USB.
 
Status
Not open for further replies.

ISF - Join now!

Every member here is approved by hand. No bots, no spam, just people who care about evidence and honest debate.

Membership is free!

Create your free account

Back
Top Bottom