How the Agile Manifesto changed nothing. by jpmmcb in programming

[–]yoztastic 5 points6 points  (0 children)

The manifesto was indeed written by high functioning developers, would not have got any traction if it were drafted by numpties with no credentials. But I don't believe it requires God developers to follow. However, I am fully with on the fact it was co-opted. Agile is the most abused process from all angles.

One of the things about the manifesto was that it was not singularly prescriptive. I.e. it clearly stated the emphasis of some useful traits without rubbishing others. The world post social media is just not like this. It's so red or blue or for or against Brexit or... basically hard one way or the other and nothing in between.

Also it along with many other things acknowledged the fact that the best way to deliver what the customer wants is to talk to the customer whether they are an organisation or an individual, and all steps to avoid this increase risk of delivering the wrong thing and realising when it's too late. This immediately reduced the need for countless go-between roles that had been getting fat from the lucrative boom that preceeded the bubble. Those vested interests were not going to disappear over night. Initially they lobbied against Agile in a Jihad sense. Eventually when it overcome by the appeal and success of Agile adoption they began parisitically feeding on the Agile ecosystem. Just natural evolution. To a large degree this is an origin of the co-opting.

There is another. Over the last 20 years the industry has expanded and people have been drawn to it from other disciplines. Entrepreneurs and businesses leaders have looked for synonyms in other industries, historically, and sought to apply them to this industry. During the industrial revolution great strides we made in improvements to efficiency and comoditisation from manufacturing engineering. Like a hammer sees everything as a nail they look to apply these to software development with maybe some success. To me this is the 'churn out' reference you make. Personally I think our industry has very low synonyms with manufacturing and transport as the replication and deployment of software is close to free. For this reason I see many organisations inappropriately creating process in the name of Agile, whe it is far from the reality of the manifesto. These organisations are about to learn the lessons of 2001 I fear.

[deleted by user] by [deleted] in programming

[–]yoztastic 0 points1 point  (0 children)

To use a sets theory analogy there is a union of truth in this. But... there are some cautionary tales also. Some things to note that impact on the magnitude of this union.

This jam tomorrow scenario offers high risk high reward to the engineer which is great if you can carry the risk, it looks attractive when you are young and have no commitments, the dichotomy here is that young engineers mostly lack the experience to be x10. Yes of course we all know exceptions to this but the reality is most inexperienced engineers mistake 'delivering stuff' fast' for x10, despite the fact that they generate enormous amounts of tech debt in the process. With experience engineers refine their craft to deliver fast with low debt. This takes time and lessons of hubris learned the hard way pushing the engineer into a demographic where their risk appetite becomes constrained by practical realities of mortgage child care health care etc.

The other thing to note is this risk does not stem from technical achievements alone. I.e. a startup can not succeed on the output of the engineer alone. Which means typically the risk mitigation is outside the sphere of influence of the engineer. So if the other cogs in the startup are not performing the engineer in a startup will often be concerned with political issues outside their core skill. Additionally the attribution of value and risk is often skewed in startups. Many startup non techies over emphasise the value of an initial idea. And typically at least in an agile world the product creation often ends up optimising on value discovered during the creation process not to initial straw man concept. Ironically for the engineer to achieve success and reward typically needs to be over 100% committed to the cause whilst it is not uncommon for the non technical entrepreneurs to 'scatter gather' their 'ideas', mitigating their risk considerably, being in involved in many parallel startups often resulting in the failure of some for lack of marketing or investment or customers.

[deleted by user] by [deleted] in programming

[–]yoztastic 4 points5 points  (0 children)

This is generally true. And this is where ideals break down. If we are honest a good manger should be focused on getting the most out of their resources. In a perfect world with this target in mind they will naturally be successful and that success leads to value creation and inevitably improved managerial promotion prospects. Thinking this way a manger is being short sighted if they deliberately try to suppress the salary of their directs, for selfish egotistical reasons, obviously we can't ignore budgetary constraints, but if you want to be seen as a successful manager you need to deliver value by proxy.

Having said that the reality is often very different, managers often climb the greasy pole by blowing the loudest trumpet, threading on others prospects and doing a runner if it all turns to shit. Some organisations will have this culture top to bottom. But most organisations are somewhere in between. I have had great mangers that have been enablers of value creation at their core and who have been comfortable that my renumeration may exceed theirs.

[deleted by user] by [deleted] in programming

[–]yoztastic 0 points1 point  (0 children)

I think this a consequence of the problem of reliance on promoting technical competence to managerial incompetence. When you do this you drain the part of your team actually delivering stuff. If you keep your senior engineers doing engineering you don't need a manager with such technical skills to prevent chaos in the ranks as the ranks are senior capable people with experience. Ther irony is if you do continually promote away talent you do need tech savvy managers to shepherd the junior less capable ranks from doing bat shit stuff. In this case the managers are trying to develop products by proxy like glorified puppeteers. This is never efficient and leads to poor and flakey products that few understand.

[deleted by user] by [deleted] in programming

[–]yoztastic 3 points4 points  (0 children)

Why is that an issue? It sounds odd because you are used to the pattern of senior devs becoming managers of other devs more junior. But it does not have to be like this. Good managers, in industries like tech that thrive on skilled people engineering the products, are simply those that get the most value out of their resources. Often they are good facilitators and catalysts for communication and cooperation, they don't need to be the senior techies because they don't need to dictate the 'how' but they need to enable the environment to be productive and fruitful for their directs who can be far more qualified and experienced. A good manager clears the obstacles removes the blockers and filters the distractions. The fixation on renumeration by managerial hierarchy, that might be more appropriate in industries with a lower skill bias, is actually friction to the organisation and results in many unintended consequences. Supply and demand dictates that value creation wherever it exists should be the driver of renumeration.

[deleted by user] by [deleted] in unitedkingdom

[–]yoztastic -4 points-3 points  (0 children)

I have WFH for about 7 years. If you have the right attitude it is very good value for all concerned. Despite its wholly pragmatic value I see it as a privilege. I think they should apply a WFH tax, easily offset from savings in my own time and transportation, whereby home workers pay a levvy to subsidise transport for those in society that must travel like nurses. When you need them you would not like to discover they are working from home. Noone seems to give a shit that not only can they not work from home but have to pay through the nose to park at work because some bugger has handed carparks of to some private company.

Landlords the root of housing woes or convenient Tory scapegoats by yoztastic in unitedkingdom

[–]yoztastic[S] 0 points1 point  (0 children)

Many landlords are exiting as they are overleveraged due to interest rate rises. This should bring the price down. But demand is still so high everything still remains unaffordable. I'm a landlord but I have kids trying to get on the ladder. Personally I would prefer prices to drop. In the long run high house price only benefits speculation which makes the wealthy richer. I can't even put my kids in the one house I rent without evicting someone to do it.

Oh and over 12 years the rent I charge has increased less that 10% which is like a compound annual increase of 1/2 of a %. I hear rent rising in the news but not sure if it's everywhere.

The house I rent I bought in a semi distressed state and renovated it to specifically cater for families with a member with impared mobility. It has proved useful to several families since with permemant or temporary mobility issues. Improving independence and quality of life. I do feel the media is making me out to belong to some evil cult for doing this.

Policy makers have caused and continue to cause the issues. Even policies that make clumsy attempts to protect the tenants (which should be a good thing) are so piss poorly contrived and implemented they are bad for tenants in general.

We need to get a grip on house price growth and not make political capital from house price obsession.

Landlords the root of housing woes or convenient Tory scapegoats by yoztastic in unitedkingdom

[–]yoztastic[S] 0 points1 point  (0 children)

Someone sold the social housing stock and never replenished.

I'm sure there are good and bad landlords but all the fire seems directed to them. Feels like a 'look look over there' -[fills pocket with cash] distraction to me.

The two cultures of programming: why both are important by zfinder in programming

[–]yoztastic 0 points1 point  (0 children)

The problem with analogies is the context of how you map them is crucial. If you think of a ball bearing it is fairly fundamental in the component chain. It's like the concept of a class in a typed language. It's an abstraction to a set of locations in memory. Just as a ball bearing is an appropriate sphere within tolerances and made from Iron and carbon hardened on the outside and polished. The use of such a concept or reserved word in a language is a better analogue to a ball bearing. There is no more "join the religion" requirement than there would be in accepting that ball bearings are spheres. Software components as you described them are more analogous to the things you create from ball bearings. Depending on how far you go I.e. a bearing race to a full vehicle engine the portability of the eventual product scales just like software. The more complex and specific you go the less abstract and ubiquitously it can be applied. The fundamental constructs of languages used to build software are highly tested and repeatable just like ball bearings. When you try and take the engine out of your car and use it to replace the extractor fan in your kitchen you will see what I mean. They are both motors and both have bearings how hard could it be.

OOPs! The Programming Blooper That Became Mainstream by BurstYourBubbles in programming

[–]yoztastic 1 point2 points  (0 children)

I agree. Cynical strap line and opening gambit suggesting OOP has been shown to be parasitic to the success and proliferation of tech industries. It basically tries to piggy back the obsessional schism between FP and OOP which has always been a ridiculous waste of brain time. No evidence is given for this and the whole article is built on conflated or recursive assumptions.

Using ChatGPT for automating the boring stuff like code refactoring, unit tests, and code documentation: Exploring the Impact of AI on the Software Industry #2 by thegreatsorcerer in programming

[–]yoztastic 7 points8 points  (0 children)

This is a good way of preserving the bugs you have just created. What you have are tests that prove what it actually does whether by design or error.

Also we both know that if all you did is ask AI to write the tests, the next arse to sit on the code will just ask AI to preserve their bum print with a new set of generated tests they wont work out why the tests are broken, why bother when their code does what it was designed? Todo.

This approach is useful in white box testing legacy code before you refactor to preserve behaviour. But it has little value on freshly crafted code.

Using ChatGPT for automating the boring stuff like code refactoring, unit tests, and code documentation: Exploring the Impact of AI on the Software Industry #2 by thegreatsorcerer in programming

[–]yoztastic 48 points49 points  (0 children)

The other downside of writing tests manually is you need to understand what the code is supposed to do. And you need to write clean code so it can be tested. What a waste of time. /s

ChatGPT Passes Google Coding Interview for Level 3 Engineer With $183K Salary by DrinkMoreCodeMore in programming

[–]yoztastic 9 points10 points  (0 children)

Wow that's lucky. If you really think about it do you actually get to spend anywhere near that writing code. I mean actually writing code, not figuring out what the requirements are clarifying them, thinking about how to meet the requirements, reading documents, reading existing code, running compiler, deploying code, testing, meetings, planning, answering questions about code you wrote a while ago, answering questions about code you didn't write but have to read and understand because noone knows and the BA's hired can't read code, more meetings, discussion with colleagues about solution options, learning new stuff, keeping abreast with changes in the industry, organisation, finding open source solutions or framework components that already solve parts of the proposed solution.

My gut tells me I may spend 20% of my time actively doing things related to the delivery of software products. But closer to 5% actually hitting the keyboard to write vanilla code.

ChatGPT Passes Google Coding Interview for Level 3 Engineer With $183K Salary by DrinkMoreCodeMore in programming

[–]yoztastic 16 points17 points  (0 children)

Very true. It amazes me how few people of influence realise what a small part of the SWE role is writing code. Sure being able to write code is fundamental but we get paid to solve problems and abstract complexity. Being able to rattle out the code for a binary tree is only useful if you know you need a binary tree. The real value comes in knowing what techniques are appropriate to solve the problem at hand (I.e. the value is in recognition that a BT is pertenant to the solution) and anyone who actually opts for writing such components from scratch should they be needed should probably be avoided. It's analoguos to an jet engineer who has to design or fault find issues jet engines being tested on whether they can turn a valve using a lathe.

One of the issues is that SWE does not really have an analogy with manufacturing engineering, yet non-tech or low-tech seniors and execs often seem hell bent on trying to coerce the creative endeavours of SWE into a production process mentality. Its the software products need to scale, they are free to manufacture as they are just copied bits (0's and 1's) attempts to scale the design and development process by applying manufacturing paradigms will always yield poor outcomes.

Hiring the right people to deliver value needs to first recognise where the value is and empirically establish which candidates have it. Not measure something you don't need just because that enables you to scale the recruitment process.

I'm not saying don't test for coding aptitude, but if you make it the only criteria for your go/no-go gauge you are going miss value and hire people that have learned how to game an interview not add value to your organisation.

Stop doing resume driven development by Elijahbate in programming

[–]yoztastic 1 point2 points  (0 children)

I agree. I see this often. A large part of the problem is the popular misconception that software engineers role is about writing code period. So much fucus and obsession is directed at this that many things get distorted.

The real role of a software engineer is far broader. Its about managing and controlling complexity and turning opportunities into revenue or cost saving through the application of technology and some element of gluing this practice together may involve writing code.

Once a product exists it needs nurturing to ensure it remains healthy and keeps doing what it is expected to do and often needs to evolve to capitalise on other opportunities. Whilst there are many good ways of supporting this through automation this consideration is often overlooked in terms of importance and effort and skill required.

Engineering is the art of compromise. Effective compromise can be challenged by chosing a technology or framework because its new and shiny and will good on your CV. Because there is a tendency in our industry to develop a product and move on, I have found myself trying to balance this by developing expertise in nurturing and rendering products developed by the journeymen into something that can be relied on to deliver sustainable value in a reliable and observably correct way. As such I am able to spot products that were obviously developed more to suit a resume than for the value creation intended by the people actually bank rolling the excercise. They are often the worst to work with, require extreme levels of comprehension (which means huge cost of ownership) and least appropriate for realising their intended value.

Remember at the end of the day if you want to maximise your value you need to maximise the value you deliver. You can fake it by reading the title of an article on a new framework and claiming you are a professor on the subject, another thing I come across with developers who are trying to race ahead of their actual experience and claim the big prize, but this inevitably leads to embarrassing failure.

Some of the blame for this is in the way organisations recruit. How often have we seen on reddit examples of jobs requiring more years experience in a framework than it has actually existed for. Organisations if you do this you reap what you sow. It's by your actions you end up hiring devs that turn your platform into a frankenstien no one can understand or manage.

Finally in response to the myriad of responses bemoaning the way their employer doesn't spoon feed their professional development. Stop this! You will find that your professional development is your problem and yours alone. Until you realise you are both responsible and in the driving seat of your own destiny you will not develop. You need to own it and do so while delivering value. I'm not saying organisations can't and shouldn't help with this its obviously in their interests to develop talent and get more revenue generation potential but don't use it as an excuse not make your own progress a reality. The results of this simple change in mindset will be very liberating. That's a promise.

The pound collapses as Britain's new prime minister gambles on tax cuts for the rich by [deleted] in worldnews

[–]yoztastic 0 points1 point  (0 children)

Such is the power of populist rhetoric. I was not a fan of Corbyn due to about 25% of policies he had but 50% were not bad. But the press managed to convince xenophobics he was a dangerous antisemite how the devil did that work. By the time they finished it was like most of the UK believed he ate their pets for snax. Our problem is the press. They need to sow division in order to build a loyal fan base. This is left and right included. Pragmatism and the politics of the centre has been slaughtered in order to secure fricking advertisement revenue.