Keep It Simple β Issue #44
Odds are you tried AI by now.
β
ChatGPT... Bard... Claude... Copilot... Cursor... Dalle3... Midjourney... π₯΅
Three months ago it felt like the only thing anybody could talk about was artificial intelligence. Lucky for us we're in tech.
βThis isn't our first rodeo when it comes to hype cycles.
Now that the dust is beginning to settle let's have a better conversation about generative AI.
I made it my goal to use AI every day for the past few months. I've learned some tricks for using it effectively.
What works great β and what doesn't work at all.
This is the golden rule.
If there is anything you can provide AI with to help it understand your problem β share it.
Here is my grocery list of things I normally think of:
The goal is to leave as little room for assumption as possible. When you leave AI room to assume It has to do a lot of heavy lifting to fill in those gaps, and that's not something you want it to do.
It still pays to know things when it comes to software.
It will be a while longer before AI understands nuance as well as we do.
If you give AI room to fill in gaps it can take you down a wrong path.
Here's he biggest issue with AI :
βIts main goal it to learn from humansβ
β
βWhen it comes to complex edge-case tasks it will believe what you tell it.
When ChatGPT first came out people were able to convince it that 2 + 2 = 5. However, over time it got smarter (by listening to other people) and now it knows for sure that 2 + 2 = 4.
However, when it comes to obscure one-off things you ask it to do when writing code β it will listen to you when you correct it.
For example: β
Try asking AI to write a python script that gets a user's tweets
Then look at the output (which probably works perfectly fine) and tell it that a random function from the twitter API library it chose to use doesn't exist. Even though the function exists, 9/10 times it will believe you and rewrite the code anyways. Just because it doesn't have enough outside evidence to prove you otherwise.
Be careful when correcting AI.
It is in its best interest to believe you, and you can throw it off course.
Don't expect AI to account for your gaps in knowledge.
One of the biggest mistakes you can make is giving AI bad context from the start.
Consider my example above about web-sockets. If I had a bad approach to implementing web-sockets from the beginning and asked AI to "correct my code" it is going to correct code that is already fundamentally incorrect.
It's extremely rare that the AI will say "actually, your current approach is less than optimal. Can I suggest deleting everything you just did and to try this alternative approach instead?".
It's going to do exactly what I told it to do. Polish up the fundamentally flawed code
Thank you for reading this week's newsletter.
I appreciate all of you who read to the end.
How I can help you:
βBook A Coaching Call βοΈβ
βFree Course πβ
βEmail Meβ πβ
Until next week π
Newsletter for Software Engineers. Teaching how to solve career and life problems with first principles thinking. One email. Once a week.
First Principles β Issue #52 How To Be The Person People Hate There is an advantage to being liked. People want to be around you more, they think of you first when opportunities come up, and you gain leverage by making people feel good. I know that sounds sociopathic to say it that way, but it's true. Goodness, good energy, and being a team player is just as beneficial to you as it is to the entire team. It's a mutualistic relationship. On the other hand... Being an asshole causes the...
Keep It Simple β Issue #52 3 No-Code Tools That Don't Suck When I started programming in I remember my teacher said:"Coding will be mostly drag and drop in 10 years" I think his claim was fair, but it didn't go as deep as any of us thought it would. The"drag and drop" code platforms are useful for a handful of things, but the full no-code movement never really caught on. For the most part β people still code. However, I have come across some tools that change the way I approach solving...
Keep It Simple β Issue #41 The Truth About Motivation Coding is Hard. Anything worth it is hard. You might love the idea of doing hard things, but you should ask yourself why you want to do it. Do you find it fun?Do you want the money?Do you want your parents' approval? It might all seem the same, but motivations make all the difference in how your accomplishments feel. For most of my life, I chased opportunities for the wrong reasons. The common reasons people would expect you to pursue...