- William Every Week
- Posts
- WEW10 - The Value of Code Versus The Value Of A Product
WEW10 - The Value of Code Versus The Value Of A Product
My VP of security was furious. He proposed a detailed plan for how our source code would be managed. Smiling, he explained how it would never make it onto a contractor’s computer again. Instead contractors would all have to log into virtual environments, accessible only from company machines. In his world, these measures would protect the source code from being copied, downloaded, transferred to a flash drive, and sold on the dark web for illegal profits. We would finally be safe.
But this would have brought our team to a complete stop. Our company’s product hadn’t launched to the public yet, had no users, and was ultimately like many other websites in how it worked. I told him that his plan was technically great, but that the tradeoffs weren’t worth it. He argued it was necessary to protect our IP (Intellectual Property). I countered suggesting we could take all our code open-source. The value of the business was the products sold, the community and the quality of the product and how it grew, not the code.
When Does Code Have Value?
Most code delivers value to a business by creating features that are needed to generate revenue, or in the case of non-profits, move the mission forward. A vast majority of company’s don’t have their success hinged on software engineering innovations, algorithms or math. Most software is built by stitching together a number of SaaS products to achieve a goal.
If you aren’t selling the technology itself, the complex results of an algorithm, or technical infrastructure, your code is more valuable as a commodity than it is as intellectual property.
This is why “no-code” solutions such as WebFlow, SquareSpace and more have come to be. Its not the code, its how the product is built, marketed and used by customers that matters. This is the same reason that several large publishers still run on Wordpress, content is the value they deliver.
Writing your own code and thus having a development team, can still be valuable, you need them to deliver features and services that are innovative and new to users and to stitch together those SaaS tools, but don’t get caught up in the code itself. If someone steals what you wrote, they aren’t your competitor.
On the other side, there are types of code that have immense value.
If you are building an AI model that would be competitive to sell, your differentiator is most likely how the model is built of trained, allowing others to get access would allow them to replicate your unique value proposition.
The other case is if your offering could be “gamed” if someone knew how your business logic was organized. Thats exactly what happened this week with Yandex as its source code was leaked, giving the world a deep view into how the search engine ranks content. This leak of their code opens the web up to people manipulating their sites to rank higher on Yandex and other popular search engines.
Alex Buraks has a great thread on twitter exploring it below.
You probably heard about Yandex, it’s the 4th biggest search engine by market share worldwide. Yesterday proprietary source code of Yandex was leaked.
The most interesting part for SEO community is: the list of all 1922 ranking factors used in the search algorithm
[🧵THREAD]
— Alex Buraks (@alex_buraks)
3:03 PM • Jan 27, 2023
Code has value, but only if getting access to the code would invalidate your revenue model.
The Death Of The Art of Code
A flurry of news articles came out this week revealing that OpenAI had hired a large contractor workforce with the goal of ending the careers of engineers.
Okay. That may be a bit dramatic, but there is a large workforce and it is focused on how to better optimize ChatGPT for writing code and answering coding questions. We probably aren’t too far from the point where we can build websites and entire digital products through conversational interfaces with AI, but how different is this from using a website service like Wix or Squarespace?
Working as a software engineer has always been a battle against becoming obsolete. I think thats one of the most frustrating and exciting parts of the profession.
I remember the day Apple announced they were dropping support for Flash software on iPhones. I was working at a game development studio that, you guessed it, made games exclusively in flash. My core marketable skill became worthless during a single press conference.
We can simply look at the tech news headlines to see that tools will continue to make software engineering a less desirable skill to learn. In the 90s, to be decent at using a computer required enough knowledge to use the command line, and maybe even write some code. It also wasn’t for everyone. Most homes didn’t have computers.
Now, the average American child grows up with technology interfaces featuring touch gestures and voice commands. The systems have become increasingly obscure. Even services like Medium, a popular blogging service, have made the once popular frameworks of Drupal and Wordpress irrelevant to individual bloggers.
The shift has reduced code's value as craft, but we shouldn't stop. Now, software jobs will shift to more architectural roles, and over time I suspect that will see entry level jobs be more geared towards understanding how to deploy and network. AI will write the Javascript
For coders reading this, know that this is an endless cycle. Look at what you are doing today that you won’t need to do tomorrow and learn something that will be needed. Staying in technology is an endless road of learning. Tech is the world. But if you like to code, keep that craft alive as the art form that it is, even if that skill decreases in business value over time.
Should Engineers Care About Open-source Being Used to Train AI?
Microsoft, Github, and Open AI are being sued for having used open-source code from Github to train their AI models. The legality of using open-source code to train an AI model or reproduce it depends on the license it is released under, if its in part or in whole, and a whole other list of “things.” Im not a lawyer.
There are licenses that allow for reproducing or reselling code in whole or part with or without credit. If code falls into this category, I can’t see the harm in using it in any way you want. But thats not true for all code repositories.
Within organizations I’ve run, the biggest argument for having code be open-source is so that others can use it and so engineers on our team can contribute to the broader tech community.
What’s the difference between a person copying it and a machine providing it for a person to copy?
One thing I do believe in strongly though is attribution. Attribution is important especially when required in terms, but even if not, its a positive kindness to whoever wrote the code. Having AI be able to say where it learned the answers from could credit the original creators and help educate the people using the software models that are helping them write code.
January’s Reading List
This January I finished 11 books, on a wide range of topics, many of which I would recommend. You can find the list and my reviews here, if you are looking for inspiration on what to read next.
Wrapping Up
I covered some topics this week you may have strong opinions on. Connect with me however you usually do if you want to chat. I am very open to other points of view. Also this is officially the TENTH issue of this newsletter. Surprisingly its gotten easier to write with each issue, but that may be due to the amount of writing I am doing in general. Aside from other blogs, I’ve begun the draft of a book which I’ll share details on soon.
Thank you for reading this far, and if you enjoyed this, please do tell your friends.