Prayers Connect is a non-profit with a limited capacity of hiring experienced engineers. So the potential and capabilities of AI have opened up new paths for us to explore and fill some gaps that we had with our capacity.
We are a very early adopter of AI technologies. Even before ChatGPT took the world by storm, we were using Github Copilot since the preview. While GitHub CoPilot improved our coding speed, with the arrival of ChatGPT the landscape of our work transformed significantly.
As mentioned in the intro, we’ve been using GitHub CoPilot from the very beginning, well before GA. Our speed to code improved significantly as it reduced the amount of time we would need to consult the documentation, and saved a lot of keystrokes by suggesting context-aware codes. Here are two examples that excited us at the very beginning.
- One of the first signs of CoPilot’s capability was when we were writing a pretty big form in React. As we use typescript, we defined the interface first which it helped with auto-completing codes. However, when we completed writing our first input field html it started suggesting the rest of the markup based on the schema. Accuracy and speed blew us out. Hours of boring typing were completed in a couple of minutes.
- We were writing a method to geocode IP addresses. CoPilot auto-completed the line with a service (API call) we were not familiar with. Then we reviewed the site’s offering and found out it is much better than the solution we were planning to use.
There are many other examples where we fall in love with CoPilot almost every day. However, after some time hitting the Tab + Return combination became a little boring as it was suggested only little snippets. Lately, it is suggesting longer snippets but the accuracy of that isn’t as good as it is for smaller snippets.
Arrival of ChatGPT!
Several challenges that we were facing were solved when ChatGPT arrived and took the world by storm. Its wide capability as well as its free tier allowed us to adopt it extensively. Now ChatGPT is a part of our SDLC.
How do we use it?
In the beginning, we use ChatGPT to explore different alternative solutions to a problem. Once we decide on an implementation route, we use it to break down the implementation. We carefully create a prompt and review the proposed solution. If we do not like it or do not consider it accurate, we either regenerate or re-prompt it.
We use code generation by ChatGPT for different languages like Typescript, Ruby, Terraform, and different contexts like Node.js, React-Native, and Ruby on Rails. In addition to solving a particular problem, we use it to write automated tests which is very helpful. ChatGPT (also CodiumAI) quickly writes tests for various edge cases that are likely to be skipped by developers given the time it requires to set up the test. However, one frequent challenge we face is that it forgets the context of our project and writes tests in different tools than what we use. So every now and then, we need to provide it context of our projects.
In addition to programming, we use ChatGPT for content writing by checking grammar, improving writing, etc. Given ChatGPT does not have the latest data, we use Bard for various research especially where we need recent data.
Also, we’ve tried to use tools like AutoGPT but were not very successful in achieving some of our objectives.
AI Image Generation
In the beginning, we were using DALL-E to generate images. However, the speed and quality threw us away. While looking for an alternative, the speed, quality, and price of Fotor. attracted us. However, since we were introduced to MidJourney this is our go-to solution for generating AI images. We use AI-generated images for our articles. Even the cover image of this article is generated by Midjourney.
One thing we regret is that Midjourney can’t be used by other people on the Discord Channel. We would love to use our quota to be able to share with all team members.
If you look at our new landing page, the images of each continent, and country are generated by AI which would, otherwise, take a very long time. Alternatively, it would be cost-ineffective for us to buy so many images. Now our limitation is our
imagination prompt’s capability.
Using AI for Videos
If you’re not familiar with AI tools like ChatGPT, you can consider watching the following video (not made by us).