Comment by aabajian
15 days ago
That is the problem with software developers with expertise in software, but no deep domain knowledge outside the CS world.
15 days ago
That is the problem with software developers with expertise in software, but no deep domain knowledge outside the CS world.
It is my belief with some exceptions it is almost always easier to teach a domain expert to code than it is to teach a software developer the domain.
For problems that can be solved with only a small amount of simple code that is true. However software can become very complex and the larger/more complex the problem is the more important software developers are. It quickly becomes easier to teach software developers enough of your domain than to teach domain experts software.
In a complex project the hard parts about software are harder than the hard parts about the domain.
I've seen the type of code electrical engineers write (at least as hard a domain as software). They can write code, but it isn't good.
That's true both ways though: if a theoretical physicist wants to display a model for a new theorem, it'd be probably easier for them to learn some python or js than for a software engineer to understand the theorems.
1 reply →
Hard disagree with hard parts of software are harder than domain. I don’t know your story, skills, or domain. But this doesn’t match my experience and others around me at all.
2 replies →
Not all kinds of programming are the same.
Web dev is low entry barrier and most web devs don’t need a very deep knowledge base.
Embedded, low level language, using optimizations of the OS / hardware require MUCH more specialized knowledge. Most of the 4 year undergraduate program for Computer Science self selects for mathematics inclined students who then learn how to read and learn advanced mathematics / programming concepts.
There’s nothing that is a hard limit to prevent domain expert autodidacts from picking up programming, but the deeper the programming knowledge, the more the distribution curves of programmers / non-programmers will be able to succeed.
Non programmers are more likely to be flexible to find less programming-specific methods to solve the overall problem, which I very much welcome. But I think LLM-based app development mostly just democratizes the entry into programming.
Every single time I try to get a domain expert at $job to let me learn more about the domain it goes goes nowhere.
My belief is that engineers should be the prime candidates to be learning the domain, because it can positively influence product development. There’s too many layers between engineers and the the domain IME
I mostly agree, but I see programmers more as “language interpreters”. They can speak the computer’s language fluently and know enough about the domain to be able to explain it in some abstractions.
The beauty of LLMs is that they can quickly gather and distill the knowledge on both sides of that relationship.
It is my experience that most of these business domain experts snore the moment you talk about anything related to the difficulties of creating software.
Until a few months ago, domain experts who ciuldn't code would "make do" with some sort of Microsoft Excel Spreadsheet From Hell (MESFH), an unholy beast that would usually start small and then always grow up to become a shadow ERP (at best) or even the actual ERP (at worst).
The best part, of course, is that this mostly works, most of the time, for most busineses.
Now, the same domain experts -who still cannot code- will do the exact same thing, but AI will make the spreadsheet more stable (actual data modelling), more resilient (backup infra), more powerful (connect from/to anything), more ergonomic (actual views/UI), and generally more easy to iterate upon (constructive yet adversarial approach to conflicting change requests).
4 replies →
Yeah, I think the issue has more to do with the curiosity level of the participant rather than whether they are a business domain expert or a software engineering expert.
There’s a requisite curiosity necessary to cross the discomfort boundary into how the sausage is made.
In practice, does that happen? Usually companies try to bring the best of both and build from there.
I wouldn’t argue how things historically worked, but rather where the LLM innovations suggest the trajectory will go.
That doesn't track at all IME.
Programming is not something you can teach to people who are not interested in it in the first place. This is why campaigns like "Learn to code" are doomed to fail.
Whereas (good) programmers strive to understand the domain of whatever problem they're solving. They're comfortable with the unknown, and know how to ask the right questions and gather requirements. They might not become domain experts, but can certainly learn enough to write software within that domain.
Generative "AI" tools can now certainly help domain experts turn their requirements into software without learning how to program, but the tech is not there yet to make them entirely self-sufficient.
So we'll continue to need both roles collaborating as they always have for quite a while still.
Conversely, good developers can now leverage LLM’s to master any domain.
1 reply →
One of my favorite things about this field is getting to learn about all of these different business domains.
This is interesting. Do you know of any examples of successful tech companies built by non-technical founders?
I think a more appropriate question would be:
"Are there more or less examples of successful companies in a given domain that leverage software to increase productivity than software companies which find success in said domain?"
Your question kind of answers itself with the filter of "tech companies". If you asked broadly about successful companies, the answer would be more apparent.
But an answer to your question would be Capital One.
Eh, this is the kind of pithy soundbite that sounds vaguely deep and intelligent but doesn't hold up.
In what domains have you had experience taking non programmers with domain knowledge and making them programmers?
I want to make a business, but what is the business
Or... the places they have deep expertise they have NDA/non-competes to worry about. (At least, outside of California.)
Sure, I could go and create an accounting app - or a clinical trial recruitment app - as a basic clone of what I've already created. And I might even make it better for some niche. But even if I know what that product system needs, I still need to find someone with the relationships to get in the door.
The trick is - you don't need an idea man for a non-technical founder. You really need someone with a rolodex and a problem.
Pretty much. I’m working on a few things with several people and I’m now constrained by their ability to find stuff to build.
It's way easier to raise for dev tools than domain tools right now.