Independent software company

Bring a problem.
Let’s find a way.

Sometimes the answer is software. Sometimes it’s a simpler process, a sketch, or pen and paper. We love figuring out what will actually help.

Built with intention
ApplicationsExtensions & toolsEngineering resources

Build with joyywith.in

Good software starts
with the right problem.

A new product. A better workflow. A system that needs attention.
We help turn the next step into something that works.

Understand. Build. Share.

Engineering, explained.

Clear thinking behind working code. Explore the fundamentals
through practical examples and considered trade-offs.

A short learning path

A first look at hashing

Two short lessons on using sets and frequency maps to solve array and string problems.

Start learning
Data structures & algorithms3 min read

Valid Anagram: count what matters

Use a frequency map to compare two strings, and understand when counting is a better fit than sorting. LeetCode 242, explained.

Data structures & algorithms3 min read

Contains Duplicate: hash sets vs sorting

Learn when a set is the right tool, and what you trade away when you sort instead. A worked explanation of LeetCode 217.

Explore all resources

A considered process

Less guesswork.
A useful way forward.

  1. 01

    Find the real need

    Understand the problem, the people, and what a useful outcome looks like.

  2. 02

    Make the scope clear

    Agree on the essential work, the trade-offs, and how we will review progress.

  3. 03

    Build and review

    Work in useful increments. Make progress visible and improve through feedback.

  4. 04

    Deliver with care

    Verify the result and leave you with a solution you can put to use.

Curiosity welcome

A tricky problem?
We’d love to untangle it.

Bring us a problem