This week The Farm met in the beer garden of the Battle of Trafalgar pub, then moved inside due to rain. Hopefully, we’ll get a little more outside time before it gets too cold. 18 people came to the meet up.
Some of what we talked about:
Coworking in Brighton
O2 data in Brighton is rubbish
Twitter/X has gone completely down the drain
Social media tip – turn off autoplay of videos given current events
‘The Psychology of Money’ by Morgan Housel
‘4,000 Weeks’ by Oliver Burkeman
Moving Laravel based websites
Terraform and the many ways of using it
Being paid to use electricity
Being quoted back to yourself (in a good way)
Brighton Community Builders meet up (was great)
Communication within projects
Running a product
Avoiding needing to chase money
Why it is better to grant an unlimited license to code in your contract rather than “sell” it
The decline of Twitter/X
Members still using Twitter are finding it less and less useful. Due to changes since Elon Musk bought the company, feeds are now dominated by paying users and the majority of those appear to be both moronic and pushing highly right wing political messages. Once again, other members were amazed anyone is still using Twitter.
This doesn’t mean much in isolation, but traditionally, techies are the first to join a service and the first to leave when it declines as they hear of alternatives earlier than other people. Some people have moved off social media altogether, or at least limited their involvement and deleted those apps from their phone. Others have found new homes elsewhere, I’m using Mastodon a lot more and have seen a lot of techies in Brighton move onto it.
Long term, no one has any enthusiasm for the idea of Twitter staying around.
Granting a license rather than “selling” code
This is something I picked up a long time ago, a problem between what programmers think of as selling “code,” but really their service, and what a business person might think of the same.
I have met clients who think that they can buy a program from a coder and that it can be just theirs. When digging further into what they meant, they thought they could buy something and that programmer would never write it for another client. But they meant more than just not creating the same thing that the program was doing for their business, they meant the actual code and all parts of it.
The problem is, effectively a programmer can’t “sell” a client their code in the way this person wanted. We all have a style of writing code, lots of it will look the same to a non-programmer. If I “sold” someone a program / set of scripts and then worked for someone else and the code was compared (which it could be if those two clients came into conflict in some way) then lots of it could be the same. I set up variables and arrays the same way, I tend to structure database tables the same way, there are just basic standards for how you handle user logins on a website, and so on. That’s before we get into libraries of other people’s code that I might use and how I call them. I can’t make them unique, or rather, I can code everything from scratch in a style I usually don’t use, but the expense would be huge.
The easy answer to this is licensing.
I can grant my client a license for their company to use my code. If I’m being generous, I can grant them an unlimited license and if they want to roll out several of the same website, they can; if not, a limited license, e.g. for just this version of their website or just a website on their domain when the work was done. I can make sure the license of any library I use matches what their project requires.
This way, they get what they want, and I don’t hit any problems later if they compare the code I wrote for them with any other project I’ve written.
Generally, clients are interested in their problems being solved, and sometimes in my not solving the same problem for one of their competitors. That doesn’t mean they need “unique” code, it means they need to understand they can buy my services to solve their problem, and if they’re serious about not working for competitors, that means an increase in price for the project and a legal agreement can be made to not work for certain other companies. This last point is a very unusual situation for me, probably because most clients don’t really want to pay to stop you working for other people as they realise it’s not worth it when faced with the cost.
If you’re working for a business where they are interested in the uniqueness of the solution, be careful and dig into what they mean by that. Don’t expect non-programmers to see code the same way a programmer would.