* Posts by cschneid

111 publicly visible posts • joined 18 Oct 2009

Page:

Older developers are down with the vibe coding vibe

cschneid

Older developers?

I'm startled that > 10 years experience is the definition of an older developer. I think of that as just entering middle aged developer territory.

Here's something no one tells developers in school: it takes _years_ of experience to become good at software development. This isn't one of those 10,000 hour exhortations, this is about the fact that experience is acquired over time and that experience is valuable.

It takes _years_ to learn your own common mistakes, the stuff you should go looking for when your code doesn't work.

It takes _years_ to really learn some software tools. Not to gain the superficial knowledge of how to get common tasks done, I'm talking about how to _really_ use the tools to prevent flaws from creeping into your code. This also points to a hidden cost of switching tool sets.

It takes _years_ to learn how to write code that doesn't just work, but works well and is also maintainable.

It takes _years_ to learn when to walk away, take a break, take a stroll, to stop pounding the keyboard because you're not making any progress. This is in direct opposition to that 100 hour a week work ethic, but it's a necessary skill - knowing when to walk away and still not give up.

It takes _years_ to learn how to test properly. Too often the agile "test early, test often" maxim demonstrates [Goodhardt's Law](https://en.wikipedia.org/wiki/Goodhart%27s_law), with a large number of tests all covering the same section of the code base. There are also cases of developers simply coding unit tests to `return true`.

It takes _years_ to learn not to reinvent the wheel. If there's an existing function or subroutine to do what you need, use it. If it doesn't do quite what you need, maybe it needs maintenance, or enhancement, or maybe what you need can be implemented as a wrapper around it.

It takes _years_ to learn about the trade-offs that play into the decisions of how write a piece of code that reliably and securely does what it's supposed to do, performs well, and can be understood and maintained by people who aren't you.

Original: https://github.com/cschneid-the-elder/rants/blob/master/why-software-sucks-000.md

Empire of office workers strikes back against RTO mandates

cschneid

previously...

Study finds a quarter of bosses hoped RTO would make employees quit https://www.theregister.com/2024/06/09/rto_quit_study/

Google, AWS say it's too hard for customers to use Linux to swerve Azure

cschneid

lock-in

I wonder if any of those Azure applications were rewrites of IBM mainframe applications, freeing the organization from one vendor's lock in only to lock themselves into another.

DOGE dilettantes 'didn't test' Social Security fraud detection tool at appropriate scale

cschneid

IBM Mainframes, COBOL, 1979, and all that

>> "SSA website went down because of atypical high volume and it’s a 1979 platform,"

I don't believe a 1979 mainframe would still be running today. Support, spare parts, etc. Possibly the speaker refers to when the software was originally written.

I do believe IBM mainframes got a TCP/IP stack in the early/mid 1990s via the Open Systems Adapter, I think.

I know for certain that current IBM mainframe resources can be accessed via REST or SOAP web services because I've written the CICS/COBOL code to make it happen.

I would really like to find out what the actual problems are, the actual technology stack in use, because I used to be part of a team that solved these sorts of problems and thus it's a point of interest

Home Office haunted by 25-year-old asylum system

cschneid

The solution, obviously, is...

AI-augmented private sector consultants vibe-coding a cloud-native solution.

Credible nerd says stop using atop, doesn't say why, everyone panics

cschneid

Re: My response

I believe _Zen and the Art of Motorcycle Maintenance_ had an anecdote about manuals, albeit not for software. The TLDR being that the assignment for writing the manual usually went to the most useless worker in the plant because everyone else was making widgets.

Data is very valuable, just don't ask us to measure it, leaders say

cschneid

assets and liabilities

I would think it difficult for the data to have value if the systems that produce it have none. As I understand it, at least where I reside, software development is allocated to the expense side of the ledger. I am not an accountant, nor am I a lawyer.

Also, everyone should start managing their "AI" prompts with git.

Time to make C the COBOL of this century

cschneid

Ironically...

...you have to try pretty hard to overflow a buffer in COBOL.

Democrats demand to know WTF is up with that DOGE server on OPM's network

cschneid

Re: Aren't Government employees neutral.

>> Can you register for both/all parties to take part in all primaries?

It depends. There are open primaries, closed primaries, semi-closed primaries, and top two primaries.

IT job market is still shrinking but not as quickly as last year

cschneid

"Help" AI chatbots are the new phone menu.

Are you better value for money than AI?

cschneid
Joke

management is the only essential task

Everything else can be done by AI or gig workers.

Google's memory safety plan includes rehab for unsafe languages

cschneid

I see several problems

First, good enough programming. We were all taught in the 1990s that good enough was good enough when Windows 3.x took over the world. It was okay that it crashed, sometimes multiple times per day. Crashes are okay so long as they don't reach a certain threshold, which is spongy and subjective and the subject of whim. Oh, look - flying toasters!

Second, Deadline Driven Development. Of course the software has bugs, but it's good enough (see above) and we've got a deadline! A meaningless deadline! A meaningless, arbitrary deadline!

Third, management engagement. As covered elsewhere in this comments section, software reliability is just one of management's many concerns and it may very well not be at the top of the list. The top of the list of course is the current deadline (see above).

Fourth, testing and code reviews. This requires a time investment that, given deadlines (see above), is one many organizations believe they cannot afford. This is a management and cultural issue.

Also, let us not forget that use-after-free and wild pointers are not the only categories of bugs in the world.

CISA boss: Makers of insecure software must stop enabling today's cyber villains

cschneid

flawless code

I did not attend the conference in question, so I don't know the entirety of what Ms. Easterly said. But the phrase "flawless code" does not appear in any of the article's quotes of her.

Drop the straw man of "flawless, perfectly secure code" and start with "more reliable, more secure code." Close the holes, fix the bugs, one by one. It takes years, and it's generally thankless. Welcome to your tech job future.

Indonesian government didn't have backups of ransomwared data, because DR was only an option

cschneid

I was approached by a budget person...

...who told me he had a user area pushing back against paying for database image copies. I explained these were to be used in case of a disaster. He replied, "I'll tell them it's like an insurance policy, something you pay for but hope never to need." No more pushback. Sometimes, people are sensible.

IMF boss warns of AI 'tsunami' coming for world's jobs

cschneid

Outsourcing

This seems like the outsourcing trend all over again.

Management has been saying "Who will rid me of these turbulent programmers" at least since the 1982 publication of _Application Development Without Programmers_.

I have no doubt that many unfortunate IT staff will lose their jobs, and those that remain will be told they have no excuse for not taking up the slack because they have been provided with Copilot or some other such tool. Time will pass, there will be turnover, and eventually there will be another hiring wave.

Kind of like insourcing after the outsourcing.

Google thinks AI can Google better than you can

cschneid

I don't care

> Google thinks AI can Google better than you can

I'm certain Google thinks that, but Google is wrong.

Mamas, don't let your babies grow up to be coders, Jensen Huang warns

cschneid

Application Development Without Programmers

A book by James Martin. ISBN-13 9780130389435. Copyright 1982.

This is a repeat of the wishful thinking behind end-user computing, 4GLs, I-CASE, etc. That someone in the C-suite wants to reduce headcount is not a surprise.

If you use AI to teach you how to code, remember you still need to think for yourself

cschneid

'twas ever thus

>>

I once worked on a project in which a software product originally written for UNIX was being redesigned and implemented on Windows NT. Most of the programming team consisted of programmers who had great facility with Windows, Microsoft Visual C++ and the Foundation Classes. In no time at all, it seemed, they had generated many screenfuls of windows and toolbars and dialogs, all with connections to networks and data sources, thousands and thousands of lines of code. But when the inevitable difficulties of debugging came, they seemed at sea. In the face of the usual weird and unexplainable outcomes, they stood a bit agog. It was left to the UNIX-trained programmers to fix things. The UNIX team members were accustomed to having to know. Their view of programming as language-as-text gave them the patience to look slowly through the code. In the end, the overall "productivity" of the system, the fact that it came into being at all, was the handiwork not of tools that sought to make programming seem easy, but the work of engineers who had no fear of "hard."

<<

- Ellen Ullman

https://www.salon.com/1998/05/12/feature_321/

https://www.salon.com/1998/05/13/feature_320/

Share your 2024 tech forecasts (wrong answers only) to win a terrible sweater

cschneid

the mainframe returns

The mainframe makes a comeback as people realize that JCL is easier than an unsteady stack of cloud configuration tools. A PCM (Plug Compatible Mainframe) industry re-emerges, with Microsoft and Apple vying for dominance. IBM Z versions of the commonly used office suites are produced by their respective vendors as IBM reveals AI powered transliteration tools to convert C, C++, C#, and most other semicolons-and-curly-braces languages to COBOL. Amazon reveals their cloud was really several geographically dispersed Sysplexes of mainframes all along.

Governments resent their dependence on Big Tech

cschneid

Excel Hell II: If the sickness can't be fixed, it must be contained

cschneid

one day early

one day early

Local governments aren't businesses – so why are they force-fed business software?

cschneid

Your experience with government and commercial enterprises is the polar opposite of mine.

IBM sues Micro Focus, claims it copied Big Blue mainframe software

cschneid

Update?

According to a blog entry by Mark J. Barrenechea, OpenText's CEO & CTO, regarding IBM's complaint the "Southern District of New York has just issued an Order, dismissing the breach of contract claim altogether."

I cannot find any reference to the order or indeed the case itself on the court's website but that may just be my lack of navigational skills or familiarity with legal terminology.

There remains Count I, the copyright infringment.

Oh dear, AWS. Cloud growth slowing as customers get a dose of cost reality

cschneid

Re: Quelle Surprise

> We are still paying for a non-functioning solution because?

Institutional inertia. In physics, it's called "the irresistible force."

Apple's M2 MacBook Pros, Mac Mini boast more cores, higher clocks and bigger GPUs

cschneid

Decide for yourself. https://www.apple.com/macbook-pro-14-and-16/specs/

Study finds AI assistants help developers produce code that's more likely to be buggy

cschneid

Re: "but the work of engineers who had no fear of “hard.”"

I don't think so either, and I don't think the quoted text says that, but you do you.

cschneid

Congratulations, you've reinvented wizards

Productivity has always been the justification for the prepackaging of programming knowledge. But it is worth asking about the sort of productivity gains that come from the simplifications of click-and-drag. I once worked on a project in which a software product originally written for Unix was being redesigned and implemented on Windows NT. Most of the programming team consisted of programmers who had great facility with Windows, Microsoft Visual C++ and the Foundation Classes. In no time at all, it seemed, they had generated many screenfuls of windows and toolbars and dialogs, all with connections to networks and data sources, thousands and thousands of lines of code. But when the inevitable difficulties of debugging came, they seemed at sea. In the face of the usual weird and unexplainable outcomes, they stood a bit agog. It was left to the Unix-trained programmers to fix things. The Unix team members were accustomed to having to know. Their view of programming as language-as-text gave them the patience to look slowly through the code. In the end, the overall “productivity” of the system, the fact that it came into being at all, was the handiwork not of tools that sought to make programming seem easy, but the work of engineers who had no fear of “hard.”

- Ellen Ullman “The Dumbing Down of Programming”, Salon, 1998

Google wants to copy-paste your mainframe applications into its cloud

cschneid

Move on from proprietary mainframes and innovate with Google's Proprietary Cloud

Maybe you're fine with tightly binding yourself to Google (or Amazon) instead of IBM. But do it with your eyes open. Vendor lock-in, from the vendor's point of view, is a feature.

The parallel test scenario seems like a good idea.

Excel's comedy of errors needs a new script, not new scripting

cschneid

Re: Who is to blame?

"If you want to do everything with process-heavy waterfall, then fine. Just be aware that it almost never works."

Neither does shadow IT, that's kind of the point.

Open source databases: What are they and why do they matter?

cschneid

stack overflow survey participants as a representative sample

Perhaps taking the results of the Stack Overflow developer survey as representative of whatever point you would like to make isn't as persuasive as you might imagine.

Just as an example, you won't see much DB2 or IMS or VSAM because mainframe developers mostly don't ask their questions on SO. They usually have a support structure built into their organization.

Jeffrey Snover claims Microsoft demoted him for inventing PowerShell

cschneid

Re: At the risk of being downvoted to hell

JES3 is now supported and enhanced by Phoenix Software.

Departing Space Force chief architect likens Pentagon's tech acquisition to a BSoD

cschneid

the humor of repeated assertions

I do find it amusing that any government activity is met with cries of "privatize it all, fire all the bureaucrats" and any government privatization effort is met with cries of "outsourcing firms are all crooks" accompanied by stories of their incompetence, contract overruns, nepotism, etc.

Exasol pledges to help customers avoid cloud bill shock with new DBaaS

cschneid

chasing chargeback algorithms

If you're going to reduce costs by chasing the chargeback algorithm, you must commit to chasing the chargeback algorithm. Whatever dance you do around the edges of the rules, you must be prepared to alter your steps as the rules are altered. And you are in control of neither the nature nor the rate of change.

There's more here but it's primarily mainframe-focused, which tells you how long this issue has been extant.

DORA explorers see pandemic boost in numbers of 'elite' DevOps performers

cschneid

Lake Wobegon DevOps

That's the news from DevOps, where all the code is strong, all the systems are good-looking, and all the practitioners are above average.

Google plays catch-up with JSON support for distributed RDBMS Spanner

cschneid

greatly simplified data modeling

One table, two columns: a UUID column and a JSON column. This will save quite a lot of time in the development phase.

Everyone cites that 'bugs are 100x more expensive to fix in production' research, but the study might not even exist

cschneid

Re: Equally unattributed, but different...

> [...] how many shops are really that organised?

Aren't all IT shops CMMI Level 5 self-certified these days?

Security warning deluge from 'npm audit' is driving developers to distraction

cschneid

configuration options

By all means, add flexible configuration options to ignore categories of warnings, sub-categories, individual warnings, or any of the preceding in various contexts. Then add the only option anyone in serious need of these warnings will use - ignore all warnings. Kind of like those unit tests that just return true.

'Set it and forget it' attitude to open-source software has become a major security problem, says Veracode

cschneid

diagnosis

When something bad happens software-wise, the first question asked is often "What changed?" This has been going on long enough for "Changes break things" to become an aphorism (it doesn't follow logically, but that's folklore for you). Which led to, "If we make no changes, nothing bad will happen."

Except of course, "What changed?" is only one of the questions to ask; another is, "What didn't change that should have?" The latter has not yet entered the zeitgeist.

And here we are.

The sad truth is, changes too often result in something bad happening. Not making changes also too often results in something bad happening. Things are broken, and no one with the power to fix them has any interest in doing so as they make a tidy living off the current state.

The classic hits keep coming from IBM: z/OS set for big update in September

cschneid

Re: Interesting

JES3 is now supported by Phoenix Software, see here.

Linux Mint users in hot water for being slow with security updates, running old versions

cschneid
Unhappy

Grump grump grump grump

The problem is that changing things breaks things, not changing things breaks things, what we have is broken to start with, and you kids won't get off my lawn.

There doesn't appear to be a solution. Everyone shrugs, says "the perfect is the enemy of the good," and makes do with systems conforming to an ever lower bar designating "good enough."

You can drive a car with your feet, you can operate a sewing machine with your feet. Same goes for computers obviously

cschneid

Flash install recommended

Amusingly, the linked ComputerLand history site exhorts me to install the latest Flash player.

Buggy code, fragile legacy systems, ill-conceived projects cost US businesses $2 trillion in 2020

cschneid

I fail to see the problem

While the article qualifies the usual assertion of a developer shortage by noting a shortage of good developers, I simply cannot see the difficulty.

We all know the definition of a good developer, it's someone who delivers on time and on budget. Accomplishing this goal merely requires a calendar and a calculator, both of which are included with Microsoft Windows and all the other (admittedly minor) players in the desktop and server space.

The CASE tool renaissance of the late 1980s taught us that the act of writing code is so trivial a task that it can be automated. The Y2K crisis taught us that anyone can engage in the act of writing code having augmented their keyboarding skills with a "Learn language in n [hours|days|weeks]" book.

Disabusing decision makers of the above load of equine excrement is going to be difficult. In the middle of the last decade of the previous century I recited to my boss that old saw about "cheap, fast, or efficient - pick any two." He replied that he'd heard that one, and he wanted all three. I took another offer soon after. And no lesson was learned.

The mindset that software developers are resources to not just be used, but used up is pervasive. That software development and project management are othogonal remains unknown to those who design org charts and compensation plans.

This is not a problem that gets fixed by adding more developers, no matter how good they are.

Amazon spies on staff, fires them by text for not hitting secretive targets, workers 'feel forced to work through pain, injuries' – report

cschneid

Re: Before shouting at Amazon...

Possibility three, the world does not work on the "that which is not mandatory is forbidden" rule and therefore companies have the freedom to treat their employees decently even if the law doesn't require it.

Which is the essence of my first reply, do try to keep up.

cschneid

Re: Before shouting at Amazon...

Jack Welsh recanted.

cschneid

Re: Before shouting at Amazon...

Ceteris paribus, yes - but not necessarily so. It's more work than it's worth to me to redesign the entire socioeconomic system when the number of thumbs up on the original indicates the masses have already absolved Amazon of all responsibility for their actions in the presence of a government to blame.

cschneid

Re: Before shouting at Amazon...

I find "It isn't illegal" a feeble excuse to treat the employees badly. It also isn't illegal to treat them decently.

Shared memory vulnerability in IBM's Db2 database could let nefarious insiders wreak havoc – so get patching

cschneid

DB2 LUW, that is

There are two flavors of DB2, the one that runs on IBM Z and the one that runs on Linux, Unix, and Windows (LUW). Last I knew, they did not share a code base, or shared very little. This affects the LUW version. In future I would suggest making that clear in the article. Perhaps even the headline.

Yes, yes, I know IBM is a failure as a company because it's losing money (except for Z) and no one uses Z (except those who trumpet about their third 5-year plan to migrate to whatever is trendy these days) and so on and so forth ad infinitum ad nauseam etc. etc. etc.

Deep-root database: Kew Garden's 8 million specimen collection to find new life through data management

cschneid

going to tender?

The problem with this approach seems to be the presumption that there exists something in the world that does what you need. This often seems to lead to evaluating various promises from an assortment of contracted custom development solution providers with an eye towards selecting the least bad amongst them.

A lesson from long ago: if you find something that does most of what you need and a feature is that you can customize to make it do the rest, you will regret your acquisition as the customizations will create no end of difficulty when you eventually reach a point where you have no choice but to upgrade. See, that "most of what you need," that was the easy part. The difficult part, the part that you can't live without, that's the part that is unique to your organization. You can't buy that part.

University of Cambridge to decommission its homegrown email service Hermes in favour of Microsoft Exchange Online

cschneid

It grieves me that the tools with which the world was built are being discarded due to fashion.

Page: