Insights, learnings and notes to self

One of the most interesting humans - Richard Feynman - once said:

"If you can’t explain something in simple terms, you don’t understand it."

These posts are my attempt to explain things to myself to see if I really understand them. Hopefully, some people will find them useful or interesting.

Fine-tuned GPT3 still (narrowly) beats generic GPT3.5 and GPT4 models in classification

Published: 2023-08-30 | 8 min read

  • ML & AI
  • LLMs
  • Classification
  • OpenAI
  • GPT3
  • GPT3.5
  • GPT4
  • Fine-tuning
  • Python

We've experimented with using OpenAI's GPT models for classification using fine-tuning and one shot prompting approaches, both in a single- and a multi-label context. The results have shown that fine-tuned GPT3 model still (narrowly) outperforms one shot prompting with GPT3.5 and GPT4. Interestingly, fine-tuned GPT3.5 model has performed significantly worse than any other model.

Read more

Leveraging Slack data in user facing products

Published: 2023-01-04 | 8 min read

  • Slack
  • Data
  • Snowflake
  • Hightouch
  • GraphQL

Slack usage has been an important in assessing the user engagement and informing future product decisions, such as productizing asks on the Community Platform. With the new Slack activity feature on profiles we’ve been able to empower our users to engage with the rest of the community while having a direct view into those patterns.

Read more

Abstraction and composition in React functional components

Published: 2021-10-01 | 3 min read

  • JavaScript
  • React

Composition is a very fundamental and powerful concept in React because it makes it easier to manage your codebase by avoiding repetition, while providing flexibility in situations where you don't know what you might want to render inside a component ahead of time, or if you want to customize a component into its more specialized variation.

Read more

Converting snake_case and camelCase between SQL and JavaScript

Published: 2021-10-01 | 3 min read

  • JavaScript
  • Databases
  • SQL

Naming conventions can differ between languages and databases. If you're using ORMs, the conversion is most likely already built into them and made available when defining models or making queries. If you're using a lower level solution to connect to and query database, you will need to take care of these conversions yourself. This can be achieved either with a custom function or by using one of the existing packages, such as humps. When picking and implementing a solution, keep in mind whether it needs to deal with nested objects.

Read more

Parsing HTML form into a nested JavaScript object

Published: 2021-09-30 | 2 min read

  • HTML
  • JavaScript
  • Node.js
  • Express

By default, HTML form data in POST requests is sent in a urlencoded format. body-parser Express middleware allows creating structured objects using square bracket notation syntax in the name attribute of HTML form inputs. This allows you to avoid the step of structuring the form data manually into an object on the client or server side.

Read more

Self-taught full-stack web development roadmap (2021)

Published: 2021-09-27 | 10 min read

  • Learning
  • Roadmap

Learning to code on your own has never been more accessible than today. As long as you have a computer and a decent internet connection, the amount of free, high-quality resources is just incredible. The challenge these days is to pick the right ones that will provide quality, up-to-date content with an optimal progression and level of difficulty. As the amount of resources increases, it becomes increasingly challenging to filter through the noise. This is an opinionated roadmap for aspiring, self-taught full-stack web developers. All the recommended resources are free to access.

Read more