Coding Challenges’ cover photo
Coding Challenges

Coding Challenges

Software Development

Westbury, Wiltshire 30,526 followers

Helping you become a better software engineer through coding challenges that build real applications.

About us

Helping you become a better software engineer through coding challenges that build real applications.

Website
http://codingchallenges.fyi
Industry
Software Development
Company size
2-10 employees
Headquarters
Westbury, Wiltshire
Type
Privately Held
Founded
2023

Locations

Employees at Coding Challenges

Updates

  • Coding Challenges reposted this

    The best way to level up your coding skills is to build fully functioning applications. That’s why I post weekly Coding Challenges that help software developers level up by practicing building real-world applications. Yesterday’s challenge was to build your own AI-Powered Contract Review Agent. If you are interested, you can find the challenge here: https://lnkd.in/eVZp-njn If you would like to join over 220,000 other software engineers and get future challenges sent directly to you, you can subscribe to the Coding Challenges newsletter here: https://lnkd.in/e4S487pP

    • No alternative text description for this image
  • Coding Challenges reposted this

    Following tutorials won't make you a better developer. Building things will. That's the idea behind my weekly Coding Challenges newsletter. Each one walks you through building a real-world application from scratch, the kind of project that actually stretches your skills and teaches you new things. This week's challenge: build your own AI-powered contract review agent. Up for it? Dive in. If it's not your thing, pick one from the back catalogue: ⇢ Build your own Docker. ⇢ Build your own BitTorrent client. ⇢ Build your own MCP server for AI agents. ⇢ Build your own Redis server. ⇢ Build your own Git client. ⇢ Build your own Lisp interpreter. ⇢ Build your own DNS resolver. ⇢ Build your own load balancer. ⇢ Build your own rate limiter. ⇢ Build your own SMTP server. ⇢ Build your own NATS message broker. ⇢ Build your own curl. ⇢ Build your own port scanner. ⇢ Build your own password cracker. ⇢ Build your own spell checker using a Bloom filter. ⇢ Build your own static site generator. ⇢ Build your own text editor. ⇢ Build your own QR code generator. ⇢ Build your own Discord bot. ⇢ Build your own JSON parser. ⇢ Build your own shell. ⇢ Build your own grep. Want future challenges in your inbox? Subscribe via the links my profile.

  • Coding Challenges reposted this

    Want to become a better software engineer? Build real software. The problem is, when you're coding to learn, figuring out what to build can eat up more time than the building itself. You end up scrolling for ideas instead of writing code. That's why every week I send a new project idea, complete with steps to work through, to more than 220,000 software engineers on my Coding Challenges newsletter. A few recent favourites: ⇢ Build your own BitTorrent Client ⇢ Build your own MCP Server for AI Agents ⇢ Build your own Language Server (LSP) ⇢ Build your own Memcached Server ⇢ Build your own Static Site Generator ⇢ Build your own Shell ⇢ Build your own jq ⇢ Build your own Discord Bot ⇢ Build your own Password Manager ⇢ Build your own Bitcask People are tackling these in JavaScript/TypeScript, Rust, Clojure, Ruby, Python, C, C#, C++, Java, Go, and Haskell. If you fancy giving one a go, or to get future challenges delivered straight to your inbox, subscribe to the Coding Challenges newsletter here: https://lnkd.in/e4S487pP Tomorrow I'll be publishing the next challenge, build your own AI powered contract review tool.

    • No alternative text description for this image
  • Coding Challenges reposted this

    Tips for AI-Assisted software development: Provide detailed error descriptions. AI coding assistants are limited by the information software engineers provided. Vague prompts produce generic suggestions. Detailed error descriptions give the AI enough context to diagnose issues, suggest targeted fixes, and reduce back-and-forth debugging. Think about the difference between: ❌ “My API call fails.” vs. ✅ “My Node.js Express API returns HTTP 500 when calling /users/:id after migrating from PostgreSQL 14 to 16. Stack trace shows TypeError: Cannot read properties of undefined (reading 'rows') inside userRepository.js line 42.” The second version gives the AI: - The technology stack. - The exact exception. - How the environment changed. - The relevant file. That level of detail in the context dramatically improves the quality of the response. Why this matters: - Detailed errors reduce debugging time by narrowing the solution space. - Exact error messages help AI map problems to known failure patterns. - Context reduces hallucinations and irrelevant suggestions. - Reproduction steps and environment details improve diagnosis accuracy. - Better error reporting improves collaboration across teams, not just AI responses. A useful principle: “Detailed errors give AI something concrete to reason about instead of something vague to guess about.” Do this in practice: ✅ Copy the complete stack trace. Don’t summarize it. ✅ Include the relevant code block and surrounding context. ✅ Describe expected vs actual behavior. ✅ Mention recent changes (upgrades, refactors, migrations). ✅ Include environment details (framework, OS, versions). ✅ List what you already tried. ✅ Add reproducible steps whenever possible. Weak prompt: “I’m getting a 404 error. Help.” Better prompt: “I’m getting a 404 error when calling GET /api/users/:id in my Express app. The route works in Postman but fails from my React frontend. I already checked CORS. Here’s the route definition and fetch call.” The difference in response quality is massive. Garbage in, garbage out applies to AI-assisted development too. The better the debugging context, the better the AI becomes as a development partner. N.B. This all held true for giving good bug reports to humans before AI and still does!

  • Coding Challenges reposted this

    I started learning Rust again. There is definitely a learning curve, but this time I got further than I did in my last attempt. Concepts from The Rust Programming Language book started to click. Using an LLM to discuss the book while I read it was a wonderful learning experience. When it came time to building something with Rust, then I felt my learning was degraded using an LLM. I built one of John Crickett coding challenges in Rust: Pong with Leptos, WebAssembly, and SVG rendering. I think the LLM got in the way of learning. It was great for helping me choose a stack, answering questions as I built, and reducing a lot of manual work. For example, I gave the LLM the image from the Pong challenge page and asked it to create an SVG game board. That saved a huge amount of effort compared to UI work I have done in previous games. But the coding felt... too easy. At times, I felt more like a coach on the sidelines than the person on the field. After getting the game running, I walked away feeling like I gained only a small fraction of the skill I would have gained if I had built it line by line myself. I write most of my code with an LLM at work, but this was different because the goal was not just productivity. The goal was to learn the language. In that context, I think the LLM took something away from the experience. I did not simply prompt, “Build me a Pong game.” Most of my prompts were smaller and more specific: architecture questions, Rust questions, Leptos questions, rendering questions, and feature-by-feature implementation questions (sample prompts in the comments). But even then, I do not feel like I learned as much as I wanted to. For people using AI while learning a new language: how do you decide when it is helping you learn versus helping you avoid the helpful hard part? Live game: https://lnkd.in/dVdKC2br Source: https://lnkd.in/dAPwcFJQ Controls Player 1: Q / A Player 2: O / L Press any key to start John Crickett Pong Challenge: https://lnkd.in/dDMParxY

  • Coding Challenges reposted this

    The best way to level up your coding skills is to build fully functioning applications. That’s why I post weekly Coding Challenges that help software developers level up by practicing building real-world applications. Yesterday’s challenge was to build your own dd Unix command line tool. If you are interested, you can find the challenge here: https://lnkd.in/eNJqS49k If you would like to join over 220,000 other software engineers and get future challenges sent directly to you, you can subscribe to the Coding Challenges newsletter here: https://lnkd.in/e4S487pP

    • No alternative text description for this image
  • Coding Challenges reposted this

    Following tutorials won't make you a better developer. Building things will. That's the idea behind my weekly Coding Challenges newsletter. Each one walks you through building a real-world application from scratch, the kind of project that actually stretches your skills and teaches you new things. This week's challenge: build your own dd command line tool. Up for it? Dive in. If it's not your thing, pick one from the back catalogue: ⇢ Build your own Docker. ⇢ Build your own BitTorrent client. ⇢ Build your own MCP server for AI agents. ⇢ Build your own Redis server. ⇢ Build your own Git client. ⇢ Build your own Lisp interpreter. ⇢ Build your own DNS resolver. ⇢ Build your own load balancer. ⇢ Build your own rate limiter. ⇢ Build your own SMTP server. ⇢ Build your own NATS message broker. ⇢ Build your own curl. ⇢ Build your own port scanner. ⇢ Build your own password cracker. ⇢ Build your own spell checker using a Bloom filter. ⇢ Build your own static site generator. ⇢ Build your own text editor. ⇢ Build your own QR code generator. ⇢ Build your own Discord bot. ⇢ Build your own JSON parser. ⇢ Build your own shell. ⇢ Build your own grep. Want future challenges in your inbox? Subscribe via the links my profile.

  • Coding Challenges reposted this

    Want to become a better software engineer? Build real software. The problem is, when you're coding to learn, figuring out what to build can eat up more time than the building itself. You end up scrolling for ideas instead of writing code. That's why every week I send a new project idea, complete with steps to work through, to more than 220,000 software engineers on my Coding Challenges newsletter. A few recent favourites: ⇢ Build your own BitTorrent Client ⇢ Build your own MCP Server for AI Agents ⇢ Build your own Language Server (LSP) ⇢ Build your own Memcached Server ⇢ Build your own Static Site Generator ⇢ Build your own Shell ⇢ Build your own jq ⇢ Build your own Discord Bot ⇢ Build your own Password Manager ⇢ Build your own Bitcask People are tackling these in JavaScript/TypeScript, Rust, Clojure, Ruby, Python, C, C#, C++, Java, Go, and Haskell. If you fancy giving one a go, or to get future challenges delivered straight to your inbox, subscribe to the Coding Challenges newsletter here: https://lnkd.in/e4S487pP Tomorrow I'll be publishing the next challenge, build your own dd.

    • No alternative text description for this image
  • Coding Challenges reposted this

    13 books on Rust systems programming - that you can get for around 4% of the cover price right now! I especially like the theme of Creative Projects for Rust Programmers - learning Rust by building projects is the genesis of Coding Challenges. 👉 The Rust Programming Handbook 👉 Asynchronous Programming in Rust 👉 Rust Web Programming 👉 Design Patterns and Best Practices in Rust 👉 Hands-On Concurrency with Rust 👉 Rust The Practical Guide 👉 Rust for C++ Developers 👉 Game Development with Rust and WebAssembly 👉 Rust Web Development with Rocket 👉 Speed Up Your Python with Rust 👉 Creative Projects for Rust Programmers 👉 Practical Systems Programming for Rust Developers 👉 Rust for Blockchain Application Development You get all of these worth over £368 for around £14 right now through Humble’s Book Bundle and support charity, details here: https://lnkd.in/dnp8BFN5

    • No alternative text description for this image
  • Who is there who does Coding Challenges?

    I’m at KotlinConf 2026, here’s my highlights from the opening keynote: Kotlin 2.4 is stabilising Context Parameters and Explicit Backing Fields as well as adding some experimental features such as Value Classes. There are a number of ecosystem changes: The Build Tools API introduced last year is now widely adopted. There is a new Kotlin Toolchain. It provides one point to create, run and AI for Kotlin kotl.in/install and is now in alpha. The consistency of documentation is improving with the Kotlin Documentation Model, it’s ideal for both IDEs, Agents and humans! The Kotlin Language Server has moved to Alpha Kotlin Language Extension is now available in VS Code They have started standardising ktfmt and moving to Kotlin Foundation Kotlin is being widely used and supported by Google: Google has collaborated with JetBrains on the k2 compiler Gemini AI and AI Studio are using Compose Multiplatform and Kotlin Android CLI for agents - includes skills for agents (and people). AI Tooling is big in Kotlin: JetBrains is developing the Agent Client Protocol (ACP) to allow all agents in all IDEs. Junie supports multiple LLM providers and has special support for Android - since both Green (a joke by the presenter, which got a good laugh from those near me). Anthropic and JetBrains have a close relationship due to Kotlin: Anthropic chose Kotlin for the Java API for Claude JetBrains built the official Kotlin MCP SDK Claude in all JetBrains AI offerings JetBrains built Kotlin SWE-Bench - Claude Code tops the benchmark (Opus 4.7 xhigh) Kotlin for AI Powered Apps: Koog 1.0 was released today, it provides controllable graph workflows and durable execution. There is support for on-device LLM. It comes with lots of enterprise integrations.. Kotlin on the backend: Ktor and Koog fit well together. There is now first party grpc support through kotlinx-rpc Exposed, the Kotlin SQL Library is now Stable 1.0. With agent skills and a plugin to generate migrations. Also supports a vector datatype Starting with 2.4 the kotlin-stdlib is getting an 18 month security support policy during which all security patches will be backported. Kotlin multiplatform: KMP use has doubled with more and more apps using Compose Multiplatform A KMP IDE Plugin is available for IntelliJ IDEA and Android Studio iOS development experience improving with Swift Export being updated and moving to alpha Kotlin/Native now has faster build times Compose Multiplatform - web moved from alpha to beta The opening keynote was a rapid-fire set of exciting updates about the ecosystem which I’ve probably failed to do justice too. Fortunately, the full keynote was livestreamed so if you want more details check it out here: https://lnkd.in/eUannxww #KotlinConf My attendance at KotlinConf is sponsored by JetBrains, the views in this post are my own.

    • No alternative text description for this image
    • No alternative text description for this image
    • No alternative text description for this image

Similar pages

Browse jobs