AI will not replace you, but someone who is AI skilled might.

When ChatGPT came to life almost two years ago, developers were so scared that they would be replaced by AI.

After two weeks, developers came to an agreement that AI would simply help developers, not replace them.

New IT trend, bring your own AI, or BYOAI — a burgeoning workplace trend where employees bring their own AI tools and models to work for exclusive use — is happening across generations, with 85% of Gen Zers bringing AI tools to work, as well as 78% of millennials, 76% of Gen Xers and 73% of boomers.

Two-thirds of business leaders say they wouldn’t hire someone without AI skills, and 71% say they’d rather hire a less experienced candidate who has AI skills than a more experienced candidate without them.

So, let’s discuss about tools helpful for developers in everyday life to make your life easy.

Documentation or Technical Specification:

  • Co-Pilot: Specify the functionalities and features the product must have. These requirements cover both user-facing features (functional) and internal programming details (technical).
  • ChatGPT or Gemini AI: Specify the functionalities and features the product must have. These requirements cover technical specifications with headings. It gives high level specification.

Personally, I use Co-pilot since it gives line to line detail for legacy programs. Even if you do not know about the legacy language, it can still provide the micro details.

Prompt Used: You are a technical document writer. Please write technical specification for below code. Use headings and bullet points to describe detailed logic of the code.

SQL Settings
The script begins by setting several SQL*Plus environment settings:
• trimspool: This is set to on, which removes trailing spaces from each line of output.
• heading: This is set off, which suppresses the printing of column headings.
• pagesize: This is set to 0, which sets the number of lines on each page of output to zero.
• feedback: This is set to off, which suppresses the display of the number of records returned by a query.
Column Formatting
The script then formats the columns for the output data.
Each column is formatted with a specific width and truncation setting.
SAS Code definitions:
1. %if "%sysfunc(getoption(filetempdir))"="" %then %do;
o This line checks whether the system option filetempdir is empty (i.e., not set).
o If it is empty, the subsequent code block within %then will be executed.
2. filename egtmpdir '/tmp';
o If the filetempdir is empty, this line assigns the logical name egtmpdir to the directory path /tmp.
3. %else %do;
o If the filetempdir is not empty, the subsequent code block within %else will be executed.
4. filename egtmpdir "%sysfunc(getoption(filetempdir))";
o In this case, the logical name egtmpdir is assigned to the value of the filetempdir system option.
5. %end;
o Marks the end of the conditional block.
6. %let path=%sysfunc(pathname(egtmpdir));
o This line retrieves the physical path associated with the logical name egtmpdir and assigns it to the macro variable path.

Code Completion and Prediction:

  • Co-Pilot or GitHub with Co-pilot: Generates design and architecture. Suggests platform and technology to be used. difficulty levels and Monetization techniques for the project.
  • Tabnine: Leverages AI to predict the next line of code you’re likely to write, saving time and reducing errors. It supports various languages like Python and JavaScript.
  • Amazon CodeWhisperer: Generates code in real-time based on your existing code and comments. It also scans for vulnerabilities, promoting secure coding practices.

I used Co-Pilot to create jigsaw game puzzle with a simple prompt. It started giving details along with YouTube videos suggested to learn. It actually wrote the code.

Prompt Used: You are a game developer. can you create a jig jaw puzzle game?

Another prompt: can you create jigsaw puzzle tiles using Unity.

using UnityEngine;

public class JigsawTile : MonoBehaviour
{
public Texture2D originalImage; // Your image texture
public int rows = 4; // Number of rows in the puzzle grid
public int columns = 4; // Number of columns in the puzzle grid

private void Start()
{
CreateJigsawTiles();
}

private void CreateJigsawTiles()
{
Vector2 tileSize = new Vector2(originalImage.width / columns, originalImage.height / rows);

for (int row = 0; row < rows; row++)
{
for (int col = 0; col < columns; col++)
{
GameObject tile = new GameObject($"Tile_{row}_{col}");
tile.transform.position = new Vector3(col * tileSize.x, row * tileSize.y, 0);
tile.AddComponent<SpriteRenderer>().sprite = Sprite.Create(originalImage, new Rect(col * tileSize.x, row * tileSize.y, tileSize.x, tileSize.y), Vector2.zero);
}
}
}
}

Code Analysis and Review:

  • Quack AI: Analyzes code, pinpoints potential issues, and suggests improvements. It automates repetitive tasks like code reviews and testing, boosting efficiency.
  • Synk: Uses AI and machine learning to identify security vulnerabilities and open-source license compliance issues in your code.

I used Synk for security vulnerabilities. This AI tool is a great advantage.

Debugging and Testing:

  • Stepsize AI: Helps debug code by suggesting potential causes of errors and offering solutions. It can analyze code changes and their impact on the entire system.
  • Codium AI: Provides a test-writing assistant that suggests and writes tests as you code, helping prevent bugs and ensuring proper functionality.

Writing test steps takes time. Codium AI gives you the steps for testing in detail. Boring test case documentation can be done in seconds.

Other AI Tools for Developers:

  • Cursor.sh: An AI-powered IDE that offers code completion, generation, editing, and even auto-debugging directly within the editor.
  • Rewind.ai: Generates documentation automatically from your code and keeps it updated as the code changes, saving time and effort.
  • Hugging Face: Provides a platform for natural language processing (NLP) tools and models, allowing developers to integrate NLP capabilities into their applications.

Remember, the best tools for you will depend on your specific needs and programming language preferences. Experiment with different options and see which ones best enhance your development process and productivity.

— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — -

Follow me on Linkedin and Twitter

--

--