979 karma · joined December 4, 2022
Building LiveReview:
https://github.com/HexmosTech/LiveReview
Risk aware AI code review for business-critical systems
The effects of these productivity gains will take time to materialize on the consumer side.
I've wanted a small prompt-manager chrome extension for a while.
Was procrastinating.
Was able to build one for myself with Firebase studio in 30 mins.
Here's my PromptPal - built in just 30m (disable ad-blocker to avoid issues - there's some interference for some reason):
https://9000-idx-studio-1744253706406.cluster-fkltigo73ncaix...
No frustration whatsoever
Their prototyper is awesome
And code mode also great
I was able to push to github as well with no problems. And the tool generates nice commits for every single change one makes.
I have limited experience with Rust, but the ownership model and the borrow checker help with avoiding concurrency bugs as well. And personally for me, Rust slowed down the speed at which I could proceed solving the problem at hand. If you have time on your hands or you're very fluent with it, rust may give better results.
Programming is about iteratively expressing a path towards satisfying said goals.
What LLMs are doing now is converting "requirements" into "formalizations".
I don't think Djikstra is wrong in saying - that performing programming in plain-language is a pretty weird idea.
We want to concretize ideas in formalisms. But that's not what any human (including Djikstra) starts with... you start with some sort of goal, some sort of need and requirements.
LLMs merely reduce the time/effort required to go from goals -> formalism.
TLDR: Requirements != Implementation
And 90% of design is just "correctly assigning priority" to elements and actions.
If you know what is important (and what is less important) you use...
- white space (more whitespacce = more important)
- dimension (larger = more important)
- contrast (higher = more distinct)
- color (brighter = more important)
... to practically implement the decided priority.
How to validate you have implemented priority correctly?
Just ask a few people what do they see first, second, third, etc in a page.
If you designed it right - their eyes will see things exactly in the order you expected them to.
In short - "design is guiding user's senses in the most prioritized manner to the user in achieving their goals"
In our startup - we call this the "PNDCC" system (priority, negative space, dimension, contrast, color).
There are a few more tricks to make it even more powerful - but as I said - just getting these right puts you in the top 10%
Even when you're building in an existing category of products (say, databases), there are still lots of variations and trial and error needed to get "what we need" defined clearly.
I'd say "vibe coding" is just a new name for "exploratory programming" or good old "prototyping"
- For the past 50+ years, really intelligent people, including Turing award winners have believed in this dreams - In fact, getting computer to solve problem on their own is the more intense path IMHO. The lazy path is sitting content with the way things are.
The possibility of pure goal-oriented systems are at an inception now. So it's a totally different game, different mechanisms, and so on.
With AI, the new evolution in software is to skip the "telling what to do" part and directly specifying the goal - "telling what to get done" and let the system figure it out.
On the nature of comets - looks like Sersi was nearer to the Truth compared to Galileo
Galileo was definitely a hostile/belligerent character.
Plus, a lot of his claims turned out to be pretty wrong, yet he stated them with such absolute confidence, which didn’t help his case at all.
In comparison people like Da Vinci, Newton were more politically/socially savvy. They knew how/when/where to communicate (relatively speaking)
The most important aspect of wisdom to me is "making it work" in many areas, in many situations, for yourself and others - throughout your life.
https://www.youtube.com/watch?v=TGfQu0bQTKc
(not really)
But my point is on the efficacy of it. I think regimentation doesn't work well in fields where there's complex problem-solving involved.
That's what practicing a profession stands for - that you cannot be dictated by laymen, etc and that you're held accountable to results.
I mean, hospital management cannot come in and dictate how the surgeon should wield his knife (but they can & must keep track of his success rate, and question if they see red flags). Or lay administrators cannot come in and dictate how a dam should be designed or what calculations are to be performed to get a working engine.
Regimentation works only for the simplest of things. Beyond that - it's hopeless.
My argument would be - greater the complexity, higher level of personal initiative and responsibility is needed.
This is not an arm-chair assertion. For example - read the works of Admiral Rickover - https://govleaders.org/rickover.htm - in buidling and managing nuclear facilities
You'll see the enormous focus on individual initiative and personal responsibility.
Heavily regimented processes are too brittle for dealing with complex problem-solving end of the day.
In fact, one way I differentiate sophisticated leader from a less sophisticated one is via the understanding of this fact: do they value individual initiative or not?
If they do not, they're not in a great position to lead complex initiatives.
But I end up retaining some associations, a kind of mood, and I also tend to grasp the tendencies and attitudes of the author.
So in a way I read between the lines a lot. I am able to read with a kind of generosity of spirit (forgiving, listening, giving charitable interpretations, etc)
This way - I end up forming the most profitable kinds of memories - something that may help me live my own life and solve problems of interest better.
Reading transports you to a different reality than your present (in psychological/experiential dimension).
Which is very important for invention and such.
If you can retain engineers long-term, then the amount of repetitive paperwork/reports/status updates, etc reduce significantly.
You can have low frequency, low effort yet high bandwidth communications along with rapid execution.
In my book Kay makes lots of sense most of the times, if you put in the effort. Maybe you see it totally differntly.
Another thing - with Newton for ex - I think the way he studied these other subjects - was still very honest, very sincere, and he made great efforts to get things right. So I'd say Newton has maintained methodological integrity throughout regardless of results (quality of efforts > quality of results). My view with Kay would be the same - I think he has high levels of integrity. I can cite why I think so, but then this thread is taking too long already.
I don't think either PG or most people on this forum are fit enough to judge what Kay is saying is of value or not. And I say this with utmost humility. These are scholarly researchers, who operate at the edge of human knowledge/insight. Who am I to judge Newton or someone of that calibre - question why he's interested in Alchemy? Or Kay says particular things which seem far-fetched to you or me.
Continuing with the Newton analogy - I think one aspect with CS/Software is that it is a new field - you should not apply the definition of a "Charlatan" you'd use in a more established field such as Physics. Kay's agenda is to advance a nascent field. Just like Newton was dabbling with Alchemy before the establishment of the modern field of Chemistry.
It's like asking Bezos to care about the Internet as a technical concept ("Internet? Schminternet? I don't care as long as it delivers the best customer experience!").
Kay was and still is a dedicated researcher - and he has had great influence on people like Jobs/Bezos as well - behind the scenes. There are very few parts of modern technology untouched by his ideas. He's a Turing Award winner for a reason, you know.
Re C++ - Kay's job as a researcher is not to defend whatever sh*t humans have figured out & are content with but to paint a picture of the future, build teams around it and demonstrate prototypes. He has done that exceedingly well I'd say.
Remember that Alan Kay, his team and his colleagues had a lot to do with this thing you are using to rant here :)