Setting the scene

I am a data scientist. My last experience with HTML was when I was eleven years old. I have no knowledge of Javascript, React, GraphQL, Gatsby, or CSS. However, all of these technologies were necessary to built and adapt this homepage.

I made significant changes to the design, functionality, and content of the site. I added automated functions for formatting and content retrieval, and improved the responsiveness to window size adjustments. My two best allies on this journey were 1) reverse engineering, and 2) ChatGPT.

Reverse engineering

If you have profound knowledge of programming and can quickly pick up on new syntax, understanding Javascript and GraphQL queries serves no problem. Even without tutorials and elaborate Google searches, changes can be efficiently implemented by looking at the source code of template websites and adapting existing code.

Letting ChatGPT code

ChatGPT has caused quite some hype since its release, and rightfully so. While it is far from perfect, it is a significant step forward in AI technology and its diffusion into everyday life. Especially when you are coding, language models can provide a lot of value, for example, with advanced autocompletion. With ChatGPT, however, you can now have a relatively fluent conversation where you iterate on problems, send code snippets back and forth and pave your way toward a solution for your coding needs.

When I got stuck with CSS formatting, I simply passed the JS code and corresponding CSS to ChatGTP with a short description of what I want the homepage to look like. Most often, within a few iterations, I got to the desired result eventually. ChatGPT was pushed to its limits and started to provide nonsensical output when its first few suggestions failed to produce the desired result (it was not always clear whether such failure was due to my or ChatGPT's inability). In these scenarios, it often helped to simply start a fresh conversation.

Asking for specific encapsulated code sections, such as functions, was less fragile. Since I am not familiar with JS syntax, I just asked ChatGPT to write me the functions I want to have and its suggested solutions most often worked like a charm.

Conclusion

  • Don't be discouraged to start your own webdev projects even if you are not familiar with the specifics
  • Reverse engineering solves most issues and teaches you a lot about the technology at hand
  • As in many domains, AI can contribute real value if you know how to use it and it can evidently substitute lacking human skill (to some degree)