Skip to content

Latest commit

 

History

History
202 lines (181 loc) · 23.8 KB

README.md

File metadata and controls

202 lines (181 loc) · 23.8 KB

Table of contents

Backend

Build tools

  • Amper – relatevely new build and project configuration tool with a focus on the user experience and the IDE from JetBrains. Seems like great Gradle alternative for multiplatform projects

Gradle

Testing

Queues and messaging

Compilers, VMs and languages

  • GraalVM, AOT and JIT – great intro to the world of GraalVM and compilation techniques, and to where Java is heading. ~10 min read
  • Runtime efficiency in Spring – virtual threads, optimized container deployment, checkpoint restore – how Spring is trying to be more efficient in the cloud. ~5 min read
  • Fastr – a high-performance implementation of the R programming language, built on GraalVM
  • Ballerina – open-source cloud-native programming language optimized for integration

Kotlin

I love Kotlin with all my heart, and it's the main language I'm using for backend development. Lots of resources here, but I'll try to keep it short

Coroutines

  • Kotlin Coroutines – the official documentation is the best place to start. Easy to understand, and has lots of examples

Libraries and frameworks

We're living in the world of lightweight trends, and Kotlin is one of the best languages to build such

  • Jooby – DSL-based web framework, similar to Ktor, but even more lightweight and easy to start with
  • Koin – a pragmatic lightweight dependency injection framework. I doubt you'll need it in prod, but it's a first place to check if you'd like to deep dive into DI
  • Atrium – fluent assertion library for Kotlin, similar to AssertJ, but with a more Kotlin-ish approach
  • Kotest – a flexible and comprehensive testing framework for Kotlin with multiplatform support, just in case you're tired of JUnit
  • Arrow – functional programming library for Kotlin, and I hope every Kotlin project will use it in the future. Kotlin world is too overcomplicated with legacy Java programming style, and Arrow tries to fix it
  • Arrow Meta – a library for building meta-programming plugins for Kotlin compiler.
  • Krush – idiomatic persistence layer for Kotlin, haven't tried it yet, but seems to be a good alternative to Exposed
  • SQLDelight – type-safe SQL for Kotlin, multiplatform, and multi-database. Seems like a good jOOQ alternative to try
  • Dokka – a documentation engine for Kotlin.
  • Kotlin compiler server – ever wondered what happens when you click on the 'run' button in Kotlin Playground? This is the server that does the magic.
  • Kotlin Monaco laguage server – the showcase I've built for the Kotlin compiler server in combination with Monaco editor.

IntelliJ Plugins

  • IntelliJ Rust support – I don't care much about Rust, but the way it's supported in IntelliJ is just amazing. The best real world example on how to build a language plugin for Jetbrains IDEs

Java

  • Relearning Java thread primitives – a short article on Java thread primitives and how the evolution of Java has changed the way we write concurrent code. Good one, if you still used to Java5-style habits. ~5 min read

Libraries and frameworks

  • Micronaut – my favourite web framework for Java. Highly maintained, xN faster than Spring, lots of features and integrations.
  • Minum – a minimalistic web framework for Java, similar to Jooby and Ktor

Databases

Ah yes, the big world of big data. Fancy deep dive guides on SQL, NoSQL, and everything in between

Design

Inspiration

  • Layers – the first website that comes to mind when I need some inspiration for the web design.
  • Relume – AI-powered website builder. I don't really use it, but their landing is a piece of art.
  • Commit mono – opensource neutral font for developers and designers, but it's on my list because of its website simplicity and style - easy to navigate, easy to read, easy to get

Libraries

  • UI land – Digital Library for Designers and Engineers. Kinda a collection like mine, but for design world. They also do author interviews, like this one with Paco, cool stuff to get familiar with the industry and people
  • Magic UI – React, tailwind, framer motion components library. Still in beta but components look much more unique and trendy

Guidance

  • UI principles – how to design a good UI? What are the principles? How to make it accessible and inclusive? This website is a good place to start

Motion and animation

  • Rive – strong community, easy UI, and lots of examples. If I were a designer, I'd deep dive in Rive ASAP since it seems to be the trendiest tool now
  • Spline – 3D animation tool, easy to use, and lots of tutorials

Computer Science

  • Roadmaps – a collection of interactive roadmaps for developers. I don't really follow it, but it's a good place to start if you're new to the industry and want to explore tech stacks
  • The Missing Semester of Your CS Education – a course on the practical aspects of using Unix-like operating systems, including Linux, macOS, and BSD. Lots of useful tips and tricks, especially for beginners
  • Shell script patterns – a collection of best practices and design patterns for shell scripts
  • SEO optimization techniques – high-quality mindmaster board on SEO optimization techniques

Frontend

React

  • useHooks – a collection of server-safe React hooks from the ui.dev team. The documentation is well-done
  • React will be compiled – a short article on the future of React, lots of stuff about memoization and performance improvements. ~5 min read
  • You might not need effect – a base article on when you might not need to use the useEffect hook. ~7 min read

Next.js

I love Next and Vercel teams. The way they build products and community around them are inspiring, so I decided to have a separate section for Next.js-related resources

  • Next.js/learn – to me, it's just a perfect example on how to build a learning platform. The content is well-structured, the UI is clean and simple. Even if you don't need to learn Next.js, it's a good place to get inspiration
  • Nextra – simple and quite flexible site generation framework with optimized links and images. I mostly see it as a 'documentation/quick guide' builder, but seems to be fine for blogs and small projects

Templates

  • Lexington Themes – really good Astro/Tailwind templates made by Michael Andreuzza. 99$/template, but seems to worth it.
  • Windstatic – from the Lexington creator, templates & layouts made with Tailwind CSS and Alpine.js. Free to use, nice to have.

Components

  • Quilljs – opensource rich text editor, I've used it in a couple of projects. Guides, documentation, and examples are also well-done

Libraries and Frameworks

  • Triggers.dev – open source typescript Background Jobs. Lots of visibility, reminds me of Temporal, but more lightweight and for the frontend stack
  • GSAP – classics of frontend animation: text, svg, scrolls, UI and more.

Machine learning

  • Bark – opensource text-prompted Generative Audio Model, the quality is just insane
  • Distributed ML patters by Yuan Tang – references and code for the book Distributed Machine Learning Patterns from Manning. I've read the book and found it really useful, especially for the distributed systems part
  • Storing OpenAI embeddings in pgvector – entry-level practical article on how to operate with OpenAI embeddings in Postgres. ~5 min read

Interpreters, compilers, and languages

  • Crafting Interpreters – a book on how to build your own programming language, literally. I've read it a couple of times and found it really useful to start understanding how our favorite languages are built. The book is free to read online
  • Resources for Amateur Compiler Writers – philosophy, descriptions, code generation, optimization strategies. Reading this stuff became a hobby for me, and I've found lots of useful resources here
  • Mal – make a Lisp – a Clojure inspired Lisp interpreter and a learning tool, implemented in 87(!) different languages

Tools

  • Pika – MacOS-style screenshot online modifier with API(!). Lots of customization and templates, fav to use for twitter posts
  • Carbon – just like Pika, but for code snippets only. Free to use, no sign in, multiple themes, mostly using for solid-color only (still much better than VSCode screenshots tho)
  • Shots – free to use, pretty mockups. Different styles, shadows, borders, backgrounds. Similar to Pika, just a matter of taste
  • Graphy – a tool to create breathtaking diagrams and flowcharts. By breathtaking I mean it, the quality of the output is just amazing. Lots of inspiration for your own charts as well
  • Excalidraw – a whiteboard tool aka what tool do you use to draw your diagrams? Hand-drawn feel, love it. I've migrated from lucid charts to this one for the sake of visual appeal, and still subscribed after a year of usage.
  • Glances – open-source system cross-platform monitoring tool, allows real-time monitoring of various aspects of your system such as CPU, memory, disk, network usage, and more
  • ./jg – a lightweight and flexible command-line JSON processor
  • ./htmlq – like jq, but for HTML :)
  • Color scale – a tool to generate color scales for your projects, quite an easy one
  • Endless tools – customazible and high-quality collection of patterns, covers, 3D objects
  • Anki – spaced repetition program typically used for learning foreign languages to memorise keyboards shortcuts and shell commands
  • Whisky – MacOS app I use to play Windows games :) Feels better than Parallels and CrossOver so far

Infrastructure

Learning

  • Aws Skill Builder – learning center to build in-demand cloud skills. Lots of free content, including labs, courses, and quizzes. I've used it to prepare for the AWS Certified Solutions Architect – Associate exam, one of the best resources I've found
  • A visual guide to SSH tunnels – explains use cases and examples of SSH tunnels while visually presenting the traffic flows
  • Production ready web-apps on docker compose – a few patterns Author picked up based on using Docker since 2014. ~15 min read
  • Containers patters – there are a thousand ways to use containers, and this presentation will help you to understand what's the best way for your case
  • CDK patterns – how to use AWS CDK to build infrastructure? Orchestration, observability, security, and more

K8s

  • Keda – K8s-based Event Driven Autoscaling, so you can drive the scaling of any container in K8s based on the number of events needing to be processed (e.g. scale based on Kafka topic)
  • Skaffold – a tool that facilitates continuous development for Kubernetes applications. Sound like docker-compose for K8s, but there is much more under the hood
  • K8s Top-10 – a list of the top 10 most common and pernicious Kubernetes security risks by OWASP. Misconfigurations, vulnerabilities, and best practices are covered

Interviews

Collection of useful resources for technical interviews, including coding, system design, and behavioral questions.

  • Remote work interviews – a collection of interviews with remote workers, including their daily routines, tools, and tips

System Design

  • System Design Patterns – the most handy collection of design patterns for designing scalable and maintainable systems, ~1h read
  • Architectural Notes lovely UI, high quality diagrams, but not so many content. Still, worth subscribing to their newsletter
  • Interview Pen – high-quality video explanations on system design topics, including real-world examples and best practices. Paid for the platform, but youtube channel is great as well

Algo practice

  • Coderbyte – a collection of 300+ coding challenges and interview questions, love the way they are organized by difficulty and type. Free platform, great solutions, medium-size community, but no completions unfortunately
  • Code Signal – if you've ever been in Netflix interviews, you should be familiar with this one. Can be used in multiple ways – regular challenge practice, or mock tech screen when you have a limited time to solve a bunch of high-quality problems. 100% recommended if looking for a FAANG job

Blogs

Some random guys I follow, mostly for inspiration and tech deep dives. I'm not really into reading blogs, but these are the ones I've found really useful

Other

  • Whereby – API & SDK to integrate video calls to your website. Haven't used it yet, but seems to be a first candidate for the next project with video calls
  • Good day Project – researching when developers feel they had a good day