{"generated":"2026-10-25T02:04:38.082Z","passages":[{"id":"notes/simple-pages#0.0","kind":"note","title":"\"Simple\" Pages","heading":null,"tags":["frontend","design"],"url":"/notes/simple-pages","section":"Notes","date":"2026-10-24","text":"A call \"simple\" pages: landing pages, blog posts, simple websites. These \"simple\" pages have a high level complexity of CSS and animations, 2 skills that I'm not so good yet, because it needs practice and I struggle I lot. Most of this webpages will be built using NoCode, as you need more Design design skills instead of code skills. How can I improve this? Digital Garden NoCode"},{"id":"notes/2023-dev-world-trending#0.0","kind":"note","title":"2023 Dev World Trending","heading":null,"tags":["ai","developers","trends"],"url":"/notes/2023-dev-world-trending","section":"Notes","date":"2026-10-24","text":"Large Language Models Copilot OpenAI ChatGPT GPT3 text to image nocode prismic AGI IDE on the cloud indie hackers micro SaaS remote work crypto ML explosion in the developer productivity using AI tools AI is the lever for developer generate code, image, audio, video, text from text summarize text explain code, image, audio, video to text edit text, image, audio, video the next big thing in 2023 for startups is to focus on free cash flow and sustainable growth the next big thing in 2023 for developers A próxima tendência no mundo de Devs na América Latina em 2023 é the next big thing in 2023 for developers is to leverage artificial intelligence in their workflows. New code, refactoring code and automated tests will be all generated by AI and just reviewed by developers. We are moving to much higher level “languages” like low-code and no-code. This new developer can be 1000x more productive than existing ones. A próxima tendência no mundo de Devs em 2023 para os desenvolvedores é alavancar a inteligência artificial em seus fluxos de trabalho. Novo código, refatoração e testes automatizados serão todos gerados pela IA e apenas revisados pelos desenvolvedores. Estamos mudando para “linguagens” de muito mais alto nível, como low-code e no-code. Esse novo desenvolvedor pode ser 1000 vezes mais produtivo do que os existentes. emanuel The next big thing in 2023 for developers is learn"},{"id":"notes/2023-dev-world-trending#0.1","kind":"note","title":"2023 Dev World Trending","heading":null,"tags":["ai","developers","trends"],"url":"/notes/2023-dev-world-trending","section":"Notes","date":"2026-10-24","text":"to use artificial intelligence to not be left behind pjonatansr AI applied to day-by-day services and helping people to do common tasks julioxavier fullstack end to end pedro arantes learning how to use artifical inteligence to complete and create code the role of programmer will revolutionize the way humanity functions, unlike anything we have seen before ivan The next big thing in 2023 for developers is AI eduardo nocode johannes.hoerteis chatgpt much better copilot much better improve their code language developed by AI, compiled faster dialogue interface caio borghi rentxr chatpgt merisio integrated ai device with your brain developers won't need to type the prompts anymore what if everybody have access to a good phone and a high internet connection speed would we care so much about performance? Dyme AI tools that helps us in our everyday tasks Felipe Reis The next big thing in 2023 for developers is product management Jean cto Resiliencia Fullstack holive what is good for the group may not benefit the individual"},{"id":"notes/5-blog-posts-feedback#0.0","kind":"note","title":"5 blog posts feedback","heading":null,"tags":["writing","blog"],"url":"/notes/5-blog-posts-feedback","section":"Notes","date":"2026-10-24","text":"1. Muito cru Quem lê também pode reforçar um bias towards over engineering Unicode é futureproof A partir de uma abstração que eu vejo como over engineering, mas future proof Botar uma foto do JWST, principalmente dos espelhos? Afinal, adaptar o evento para seu uso é o que eu entendo como o principal uso da arquitetura hexagonal Colocar numa abstração good enough unsplash reference Practical backward compatibility example Se eu tô dizendo que roda as migrações primeiro, o que isso seria distinto do primeiro approach? Se remover o first ali, fica implícito que o bullet implica ordem temporal Até pq no primeiro bullet isso ficou explícito E também ao terminar com um código backward compatible parece que esse é o endgame não que o endgame seria remover isso e tornar a usar apenas o modelo novo, após garantir que todo o código está no \"futuro\" Future Proof Muito cru Quem lê também pode reforçar um bias towards over engineering Unicode é futureproof A partir de uma abstração que eu vejo como over engineering, mas future proof Botar uma foto do JWST, principalmente dos espelhos? Afinal, adaptar o evento para seu uso é o que eu entendo como o principal uso da arquitetura hexagonal Colocar numa abstração good enough Acho que e legal falar mais sobre a parte de casos imaginarios. Dar mais contexto, um bloco so pra isso “E legal feature proof mas nao se perca tbm tentando adivinhar o que"},{"id":"notes/5-blog-posts-feedback#0.1","kind":"note","title":"5 blog posts feedback","heading":null,"tags":["writing","blog"],"url":"/notes/5-blog-posts-feedback","section":"Notes","date":"2026-10-24","text":"nem existe” e dar exemplos"},{"id":"notes/a-failed-talk#0.0","kind":"note","title":"A Failed Talk","heading":null,"tags":["talks","react"],"url":"/notes/a-failed-talk","section":"Notes","date":"2026-10-24","text":"A talk is a good way to explain some concept. When doing a talk you need to know your audience, you can't target beginners and advanced users at once A failed talk can happen for many reason wrong subject bad slides/content wrong audience targeting Substack There are no hard subjects to be cover in a presentation, there are only different ways of presenting them. I did a “bad” talk at Rancho Dev when I’ve talked about Forms and Formik (slides and code here). The problem of this talk was about my assumptions of the audience. I’m used to talking in places that most people know basic React concepts, but Rancho Dev conf was a more broad conferences with many different topics. As I did not provide more context (a basic intro of React, react hooks and so on), it was hard to explain to them how to apply this concepts to solve the forms in React land. I always ask for feedback give me here) after my talk, and this one I received a really bad one saying that I thought the audience won’t grasp the concepts. The truth was that I didn’t understand really well these concepts to explain like I’m 5. How would be a better talk for that audience? More about the problem and motivation (how hard complex forms can be to get right) basic React intro concepts more concepts less code"},{"id":"notes/a-failed-talk#1.0","kind":"note","title":"A Failed Talk","heading":"Link","tags":["talks","react"],"url":"/notes/a-failed-talk","section":"Notes","date":"2026-10-24","text":"Link Community you need to give talk to create a community Share"},{"id":"notes/a-mock-graphql-service#0.0","kind":"note","title":"A mock GraphQL service","heading":null,"tags":["graphql","opensource"],"url":"/notes/a-mock-graphql-service","section":"Notes","date":"2026-10-24","text":"The idea is a simple Koa server that receives the schema.graphql in a body applies the mocks to it, and return a given query app.use(getSchemaFromBody()) app.use(graphql()) here is the demo it takes a schema and a mock resolvers definitions, and generate a GraphQL operation result based on this"},{"id":"notes/a-mock-graphql-service#1.0","kind":"note","title":"A mock GraphQL service","heading":"Links","tags":["graphql","opensource"],"url":"/notes/a-mock-graphql-service","section":"Notes","date":"2026-10-24","text":"Links Open Source"},{"id":"notes/abstract-node#0.0","kind":"note","title":"Abstract Node","heading":null,"tags":["learning","thinking"],"url":"/notes/abstract-node","section":"Notes","date":"2026-10-24","text":"You can model knowledge as a graph of nodes of concepts/ideas When you abstract 2 or more ideas in a more general concept finding the edges among those nodes This will make show up a new node with the concept that can represent both type of knowledge"},{"id":"notes/abstractions#0.0","kind":"note","title":"Abstractions","heading":null,"tags":["programming","abstraction"],"url":"/notes/abstractions","section":"Notes","date":"2026-10-24","text":"block An abstraction is something that helps us An abstraction can help build concrete things twitter thread React is the abstraction to build UI using components D3 is the low level abstraction to build charts/graphs, it can build any chart functional css let you build any style Declarative vs imperative The basic building block of functional programming is a function A function is a lazy reusable chunk of code."},{"id":"notes/abstractions#1.0","kind":"note","title":"Abstractions","heading":"Links","tags":["programming","abstraction"],"url":"/notes/abstractions","section":"Notes","date":"2026-10-24","text":"Links"},{"id":"advice-for-developers#0.0","kind":"note","title":"Advice for Developers","heading":"tips to evolve as a developer","tags":["advice","developers"],"url":"/advice-for-developers","section":"Essays","date":"2026-10-24","text":"tips to evolve as a developer developers get stuck, paralized Make It Stick Learn in Public is better when you fail how to become a better developer watch repo that you wanna contribute, answer all issues, review all pull requests, try to fix bugs and improvements, improve docs zero to one accept reality, ray dale principles outliers 10k of practice how to get rih where good ideas come from taleb books black swan antifragile skin in the game ask people advice, they can tell you where you are doing wrong. They can see what you can’t keep notes in evernote/notion at least one note per day F is for finishers don’t be afraid to code don’t be afraid to fail don’t be afraid to introduce a bug code fearless build stuff"},{"id":"advice-for-developers#1.0","kind":"note","title":"Advice for Developers","heading":"References","tags":["advice","developers"],"url":"/advice-for-developers","section":"Essays","date":"2026-10-24","text":"References"},{"id":"always-share-code#0.0","kind":"note","title":"Always Share Code","heading":null,"tags":["help"],"url":"/always-share-code","section":"Essays","date":"2024-02-25","text":"Always Share Code When asking for help, always share code. Without context, like code, error message, error stack it is impossible to help you"},{"id":"notes/android#0.0","kind":"note","title":"Android","heading":null,"tags":["mobile"],"url":"/notes/android","section":"Notes","date":"2026-10-24","text":"aab new app format is a mess to work with, because you can't directly installed it you need to use bundletool to properly prepare the apk to install in your device check this Agora você pode dizer como está se sentindo direto no App Ahora puedes saber cómo te sientes en la aplicación Now you can tell how you are feeling right on the App"},{"id":"mentorship/async-mentorship#0.0","kind":"note","title":"Async Mentorship","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/async-mentorship","section":"Mentorship","date":"2024-02-25","text":"Most of my mentorship is all about questions and answers. Socratic method. I will try to write it down all questions and answers to accelerate everybody. And also avoid answering the sames questions twice."},{"id":"asynchronous-mentorship#0.0","kind":"note","title":"Asynchronous Mentorship","heading":null,"tags":["advice","mentorship"],"url":"/asynchronous-mentorship","section":"Essays","date":"2022-11-25","text":"Most mentees belive that they need sync mentorship to be able to explain their problems. However, I've found that doing an async mentorship using text to provide better results. Mentorship is a long term process, you can't \"fix\" or \"improve\" someone in a session, it takes time."},{"id":"asynchronous-mentorship#1.0","kind":"note","title":"Asynchronous Mentorship","heading":"Mentorship Cycle","tags":["advice","mentorship"],"url":"/asynchronous-mentorship","section":"Essays","date":"2022-11-25","text":"Mentorship Cycle The mentee will pass in the 3 steps of the mentorship cycle. The first one is to be in a given situation, or having some problem or doubt. The mentor will analyse and provide some advice and ideas based on his/her experience, thus unblocking the mentee to do more work. After that, the mentee needs to work, read and reflect on ideas and advice, that will make him/her progress in his/her goals."},{"id":"asynchronous-mentorship#2.0","kind":"note","title":"Asynchronous Mentorship","heading":"Rules","tags":["advice","mentorship"],"url":"/asynchronous-mentorship","section":"Essays","date":"2022-11-25","text":"Rules be proactive and active in twitter and discord, to bring new situations and problems to the mentor ask a lot of questions to guide you to find the answer you are looking for read everything that was recommended, code everything that is needed, apply advices to test if they work for you"},{"id":"asynchronous-mentorship#3.0","kind":"note","title":"Asynchronous Mentorship","heading":"Start here","tags":["advice","mentorship"],"url":"/asynchronous-mentorship","section":"Essays","date":"2022-11-25","text":"Start here Start answering all these questions"},{"id":"notes/atom#0.0","kind":"note","title":"Atom","heading":null,"tags":["thinking","learning"],"url":"/notes/atom","section":"Notes","date":"2026-10-24","text":"We can use atom to describe something that is minimal and indivisible We can have an atom of state like redux recoiljs We can have an atom of thought as Roam and Zettelkästen uses We can derive state using multiple atoms We can compose thoughts ideas using many atoms A Mental Models is an atom of thought, very well defined one. We can have atomic CSS to compose our styles Atoms are the building blocks (The era of Content Builders Where good ideas come from) of everything In design you have colors, space, fonts are the basic atoms/blocks to mix and match content"},{"id":"notes/audience#0.0","kind":"note","title":"Audience","heading":null,"tags":["talks","startups"],"url":"/notes/audience","section":"Notes","date":"2026-10-24","text":"An audience is a group of people that is listen to a talk, that will use a product. In the same way a talk can fail when targeting a wrong audience (A Failed Talk A product/service will fail if it target the wrong audience. An audience is the market of your Product Market Fit, without it you won't go further and won't succeed (How to be Successful Learning in public is good to build your audience Your audience will learn with you You need to give a lot of good stuff for free Payed Commutities"},{"id":"mentorship/backend-hiring-questions#0.0","kind":"note","title":"backend hiring questions","heading":"backend questions","tags":["advice","mentorship","questions","async"],"url":"/mentorship/backend-hiring-questions","section":"Mentorship","date":"2024-02-25","text":"backend questions \"Good backend hiring question?\" how to scale backend? horizontal scaling, vertical scaling, caching, event driven, async job processing, queues how to optimize database queries? use indexes, use the explain command, simplify queries, use materialized views, cache what is idempotent a request that can be called multiple times without changing the result, a good example is a payment, if the payment is made twice, the result is the same how to make a function, request idempotent use an idempotency key, use an unique database index how to make a system fault-tolerant? use retries using async job processing, handle error properly, use error code. what to do when a webhook that you are waiting for does not arrive? create a pooling fallback how to document backend archicture? use diagrams, state machine, sequence diagram when to use a state machine? when you have a complex flow, like a payment, a subscription, a user registration how to ensure the data system is consistent? create auditing tools to validate this, use state machines how to test backend prefer integration tests like test input and output of API, GraphQL, jobs, database state avoid mocking databases. how to implement event driven use a message broker like kafka, rabbitmq, sqs, sns, redis, bull how to decouple backend create packages/repository per domain instead of feature, avoid circular dependencies,"},{"id":"mentorship/backend-hiring-questions#0.1","kind":"note","title":"backend hiring questions","heading":"backend questions","tags":["advice","mentorship","questions","async"],"url":"/mentorship/backend-hiring-questions","section":"Mentorship","date":"2024-02-25","text":"use event-driven how to automate ci/cd? use github actions, gitlab ci, circle ci, jenkins, travis, docker, docker-compose, kubernetes why observability is important? to understand the system, to understand the user, to understand the business, to understand the performance how to implement observability apm, prometeus, sentry, grafana, tracing, metrics and logs how to deploy backend? pure ec2, vps, eks, k8s, aws, gcp, azure, heroku, netlify, vercel, digital ocean how to do data modelling prefer simpler models over complex models, fewer models and fields are better, prefer to avoid too many relationship and joins when to use docker and docker compose to automate deployment and simplify dx for development how to do database migrations? for sql you need structural and data migrations, for nosql you need to create a new collection and migrate the data when to use cache to cache expensive operations, to cache oauth token with expirations how to deal with eventual consistency? avoid read followed by write, read from primary, improve write and read concern how to deal with distributed systems? use idempotent, use retries, use async job processing, use queues, use event-driven, use state machines how to deal with external APIs? decouple the external API using port adapters, have a fallback for an API how to deal with concurrency to update a shared resource like a ledger balance?"},{"id":"mentorship/backend-hiring-questions#0.2","kind":"note","title":"backend hiring questions","heading":"backend questions","tags":["advice","mentorship","questions","async"],"url":"/mentorship/backend-hiring-questions","section":"Mentorship","date":"2024-02-25","text":"conditional put, locks, database transactions when to use REST API or GraphQL prefer GraphQL for internal products, and REST API for public APIs. how to deal with security? use oauth, use jwt, use https, use cors, use csrf, use rate limit, use waf, use security vercel vs serverless vs k8s vs ec2 vercel for MVP, ec2 for simple workflows, prefer k8s for complex workflows and to be able to move from cloud providers/on-premise/bare-metal, prefer serverless for event-driven workflows"},{"id":"notes/being-wrong#0.0","kind":"note","title":"Being wrong","heading":null,"tags":["thinking","learning"],"url":"/notes/being-wrong","section":"Notes","date":"2026-10-24","text":"You can be wrong in many situations Make sure to always revalidate your ideas on new information like Bayesian approach P(A I): your probability of something should changed based on new information I was wrong about Flow Typescript proved themself my better in short and long term. I was wrong about Flow because I didn't give a real change for Typescript before working on a pull request for peril/danger What else am I missing? nextjs gatsby elastic search nocode"},{"id":"notes/being-wrong#1.0","kind":"note","title":"Being wrong","heading":"Links","tags":["thinking","learning"],"url":"/notes/being-wrong","section":"Notes","date":"2026-10-24","text":"Links Bleeding edge"},{"id":"notes/bidirectional-note-taking#0.0","kind":"note","title":"Bidirectional note taking","heading":null,"tags":["learning","notetaking"],"url":"/notes/bidirectional-note-taking","section":"Notes","date":"2026-10-24","text":"Create a note for the source (book) Create a note for each idea/concept of the source For instance, a note for Make it Stick A note for spaced learning A note for interview learning A note for memory retrieving and so on"},{"id":"notes/big-o#0.0","kind":"note","title":"Big O","heading":null,"tags":["algorithms","performance"],"url":"/notes/big-o","section":"Notes","date":"2026-10-24","text":"Big O is how we measure how fast an algorithm is, and how fast it grows as the input N grows O(n) means the algorithm increases at the same rate as their input o(log n) means it increases based on their log (usually the depth of the tree), used on tree algorithms to Search data To improve performance we always try to find better algorithm with better times over number of inputs Sometimes the way to solve this is to reduce the input it is to process less or \"cache\" some results. Like bazel or dynamic programming does"},{"id":"bio#0.0","kind":"note","title":"Bio","heading":null,"tags":["bio","myself"],"url":"/bio","section":"Essays","date":"2024-04-22","text":"Bio Sibelius is CoFounder of Woovi Instant payments startup. Sibelius has worked in startups since 2015, provides mentoring for developers to become seniors, and also provides consultancy for Startup early stage"},{"id":"notes/bitcoin#0.0","kind":"note","title":"Bitcoin","heading":null,"tags":["crypto","economics"],"url":"/notes/bitcoin","section":"Notes","date":"2026-10-24","text":"Sound money sound/hard money is money that it is a good store of value, it does not suffer with inflation, and it can't be easily made proof of work is about creating a decentralised timestamp server, where you know the order of events it is about time. A bitcoin transaction can be made of many inputs and many outputs an input is a uxto (unspendable transactions) so if you have 10btc and you wanna transfer 1btc to someone, you generate 2 outputs, as the other one will be your \"pocket\" change block explorer is like the index for the blockchain info about a transaction info about a transaction block (a block contains many transactions) a coinbase in the first transaction of a new block that represents the fee of the miner proof of work is just finding the correct nonce that generate the 2 sha256 hash with many 0 at first. bitcoin script let you program bitcoin multisig like 2-3 let 2 of 3 diginal signatures spend the transactions lighthing network make it possible many transactions of chain send a transaction with some value to bitcoin (multi sig), like 1 btc after the offchain transaction is settle up, you commit a new transaction with refund based on other transactions. payment channel. bitcoin is like gold gold is not good to handle payments new generation of crypto, ethereum, smart contract, dai, nano."},{"id":"notes/black-swan#0.0","kind":"note","title":"Black Swan","heading":null,"tags":["risk","books"],"url":"/notes/black-swan","section":"Notes","date":"2026-10-24","text":"Black swan is an unexpected event that causes massive consequences. One event that usually happens on the tail of the propability. The last black swan as covid19. Covid19 is a new virus that has a high rate of contagious. The dead rate is not too high (7%), but it is a new virus it can collapsible the health virus increasing the dead rate. It changed the way society works, right now we work from home. We stopped physical store opening."},{"id":"notes/blank-canvas#0.0","kind":"note","title":"Blank Canvas","heading":null,"tags":["writing","creativity"],"url":"/notes/blank-canvas","section":"Notes","date":"2026-10-24","text":"A blank canvas is starting to do something out of nothing It is very hard to build something without nothing to start with The idea of Zettelkasten is to fill this canvas with your preprocessed notes, so you can just reorganized them to write the final text. You're gonna have all the sources, quotes and material to mix and match to write the final text Don't start from a Blank Canvas"},{"id":"notes/bleeding-edge#0.0","kind":"note","title":"Bleeding edge","heading":null,"tags":["career","learning"],"url":"/notes/bleeding-edge","section":"Notes","date":"2026-10-24","text":"edge Bleeding edge is the state of art of something It is the new technology When you focus on bleeding edge (new), you have an advantage as everybody start in a clean slate. You are not competing with Java developers with 10 or more years of experience Everybody using React hooks has only a few months of experience, so you can compete fair with them It also show the value of niche, as most people won't try new tools until they gain traction It can have a great upside if you are right, but the downside is not big as you can transfer the learning concepts to other projects."},{"id":"notes/bleeding-edge#1.0","kind":"note","title":"Bleeding edge","heading":"Reference","tags":["career","learning"],"url":"/notes/bleeding-edge","section":"Notes","date":"2026-10-24","text":"Reference"},{"id":"notes/blitzscaling#0.0","kind":"note","title":"Blitzscaling","heading":null,"tags":["startup","growth"],"url":"/notes/blitzscaling","section":"Notes","date":"2026-10-24","text":"blitzcaling growing faster than your competitors eXplore find product market fit eXpand validated, simplify, fix bottlenecks eXtract scaling economy modelo de tuckman an elegant puzzle quatro estágios de um time responsabilidade extrema sucesso no trabalho"},{"id":"notes/book-list#0.0","kind":"note","title":"Book List","heading":null,"tags":["books","reading"],"url":"/notes/book-list","section":"Notes","date":"2026-10-24","text":"This is a list of all books that I wanna/need to read I'm gonna test reading more seriously this year, less twitter more deep reading and writing Invent and Wander: The Collected Writings of Jeff Bezos, With an Introduction by Walter Isaacson The Everything Store: Jeff Bezos and the Age of Amazon elon musk tesla spacex and the quest for a fantastic future Fooled by Randomness, taleb marriage Things I wish i knew before i got married management books Radical Candor Fundamentals Self-Management/Managing-up Expectations at different levels How does your brain works First, break all the rules The Manager’s Path The Most Human Human Greatness Blue Ocean Strategy: Build something novel. The Intelligent Investor: Fundamentals are eternal. The Effective Executive: You’re wasting most moments. The Snowball: Warren Buffett and the Business of Life More money than god Business Adventures"},{"id":"books#0.0","kind":"note","title":"Books","heading":null,"tags":["books"],"url":"/books","section":"Essays","date":"2023-03-17","text":"Grab any of these books and if you need more books, just dm me on twitter. Name Author(s) Anti fragile Nassim Nicholas Taleb Make It Stick: The Science of Successful Learning Henry L. Roediger III and Mark A. McDaniel O livro da psicologia Divers Zero to one Peter Thiel and Blake Masters Hackers and painters Paul Graham Founders at work Jessica Livingston Lean startup Eric Ries The Black Swan Nassim Nicholas Taleb Skin in the game Nassim Nicholas Taleb Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems Martin Kleppmann A teia da vida Fritjof Capra O Homem e seus Símbolos Divers Scrum. A Arte de Fazer o Trabalho na Metade do Tempo Jeff Sutherland and J. J. Sutherland On Intelligence: How a New Understanding of the Brain Will Lead to the Creation of Truly Intelligent Machines Jeff Hawkins Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman Hoover Dave and Adewale Oshineye The Principles of Product Development Donald G Reinertsen O projeto fênix Edição comemorativa: um romance sobre TI, DevOps e sobre ajudar o seu negócio a vencer Gene Kim, Kevin Behr, and George Spafford Persuasive Technology: Using Computers to Change What We Think and Do B. J. Fogg Só os paranoicos sobrevivem GROVE- ANDREW S The Hard Thing about Hard Things: Building a Business When There Are No Easy Answers Ben Horowitz What You Do Is Who"},{"id":"books#0.1","kind":"note","title":"Books","heading":null,"tags":["books"],"url":"/books","section":"Essays","date":"2023-03-17","text":"You Are: How to Create Your Business Culture Ben Horowitz"},{"id":"notes/books-as-answers#0.0","kind":"note","title":"Books as answers","heading":null,"tags":["books","learning","mentorship"],"url":"/notes/books-as-answers","section":"Notes","date":"2026-10-24","text":"I believe we can learn a lot in books. We can learn knowledge that author took some years to figure it out in a few hours or days. It is like compressing your learning When someone ask me a question I usually answer with a book to be read"},{"id":"notes/books-as-answers#1.0","kind":"note","title":"Books as answers","heading":"Links","tags":["books","learning","mentorship"],"url":"/notes/books-as-answers","section":"Notes","date":"2026-10-24","text":"Links"},{"id":"notes/build-less#0.0","kind":"note","title":"Build Less","heading":null,"tags":["ci","monorepo","devops"],"url":"/notes/build-less","section":"Notes","date":"2026-10-24","text":"monorepo testing and build playground Tooling around Git and compare url to decide what to build It does not matter if you have the fastest algorithm if your N is too big. Sometimes you need to reduce N to make sure you sure things does not grow with N. As your project grows, your \"N\" will grow together. Your dependencies sizes will grow Your codebase will grow Your tests will grow (if you care about long term) Your build process will slow down as you are building more code. Your type checking will get slower. One way to solve this is to use a directly acyclic graph (DAG) to avoid testing, type checking, rebuilding what has not changed since last time. In this article we won't use a DAG, we are going to use a much simpler strategy that can be modify to add a DAG to make it more robust. The first thing that we want to do is to only run tests that are affected by the current files. How do we know which files were changed? We are going to use some git commands to make this possible. CircleCI concepts CircleCI is a continuous integration system that let you automate common software tasks, for instance: linting, tests, type checking, build, deploy. A new pipeline is trigged when you do some work (push a new commit, for instance). A pipeline can contains many workflows. Each workflow have jobs that represents the cycle of your software process (for instance, install test deploy). A"},{"id":"notes/build-less#0.1","kind":"note","title":"Build Less","heading":null,"tags":["ci","monorepo","devops"],"url":"/notes/build-less","section":"Notes","date":"2026-10-24","text":"job contains N steps of commands to perform something, like run lint, run tests. Compare URL CircleCI had a concept of CIRCLECI COMPARE URL before v2.1, that you can recreate in v2.1 using pipeline variables, like this: environment: CIRCLE COMPARE URL: &lt;&lt; pipeline.project.git url /compare/&lt;&lt; pipeline.git.base revision ...&lt;&lt;pipeline.git.revision Here is a few examples of COMPARE URL: The url above says that this pipeline contains code from the base branch (master or main) to the a2e2709c4 commit. The above contains code from commit 37ac69404a5b to 69bc6e3fe337 Test by yourself here Problems with CIRLCLE COMPARE URL using pipeline variables The first problem we hit when using CIRCLE COMPARE URL using pipeline variables was that they are only bringing the range from the current commit to the last commit. We would like to always test files related to the whole changes in the pull requests. To fix this, we discard the \"base revision\" (the first commit in the compare url), and use the base branch instead. this turns into Before getting the files using git diff (spoiler), we need to checkout the latest master. This is needed because CircleCI only do a shallow checkout to make it faster, you don't need all git history or branches in every pipeline. Testing only affected test files After all this setup we need to get a list of all affected files to make sure we are"},{"id":"notes/build-less#0.2","kind":"note","title":"Build Less","heading":null,"tags":["ci","monorepo","devops"],"url":"/notes/build-less","section":"Notes","date":"2026-10-24","text":"testing the right amount of tests. FILES CHANGED=$(yarn --silent entria-deploy changes {CIRCLE COMPARE URL --baseRef {BASE REF We are using entria-deploy cli to helps us get a list of all files that changed using compare url and a base ref/branch. What we are really just doing is a git diff —name-only, like this git diff master...8f8760 —name-only that return a list of all files that changes, like this: packages/packageB/src/index.ts After this, we are going to use jest —findRelatedTests to find which testfiles to test TESTFILES=$(yarn --silent jest --findRelatedTests --listTests $FILES CHANGED) The result is for this example is this: packages/packageB/src/ tests /packageB.spec.ts Before testing these files we need to check if there is any testfile to test, this could happen if you are only modifying README.md or other files Splitting tests to make them blazing fast We can use circleci tests split to split test files to run them in parallel Build and Deploy only affected packages After bringing down the testing time in pull requests to a mean of 3x, can we only build and deploy affected packages? sure we can. Our monorepo contains many GraphQL servers, and some REST (just one I swear), we also have many frontends and many apps (some white labels). We used to build and deploy all of them to staging on master after every commit. To solve this, we used the CIRCLE COMPARE URL (that"},{"id":"notes/build-less#0.3","kind":"note","title":"Build Less","heading":null,"tags":["ci","monorepo","devops"],"url":"/notes/build-less","section":"Notes","date":"2026-10-24","text":"provides the right range in master), to check if we changed any file that would affected the package to be deployed. entria-deploy hasChanged is just circleci-agent step halt make the job stop, so we have one of this before each step of build/deploy to make sure we are not building and deploying something that haven't changed. you also want to use less parallel testing if you need to test much less tests 5000 6 dockers"},{"id":"notes/building-from-scratch#0.0","kind":"note","title":"Building from Scratch?","heading":null,"tags":["writing","frontend"],"url":"/notes/building-from-scratch","section":"Notes","date":"2026-10-24","text":"why am I building my blog post from scratch? The idea is to learn all about the details to create great ux and dx I'd like to feel all the pain of writing everything in pure html and css Then start writing my own what you see is what you get minimal editor, the benchmark is substack and medium. They are good, but I think I can get a better version if I focus on my workflow."},{"id":"notes/bundle-analyze#0.0","kind":"note","title":"Bundle analyze","heading":null,"tags":["frontend","performance"],"url":"/notes/bundle-analyze","section":"Notes","date":"2026-10-24","text":"Most modern apps can’t be built without dependencies, so we need to analyze the final bundle of our application to make sure we are not shipping unnecessary code We can also use this to reduce node modules dependencies and remove big deps Node Modules Single Bin JavaScript"},{"id":"buying-time#0.0","kind":"note","title":"Buying Time","heading":null,"tags":["time"],"url":"/buying-time","section":"Essays","date":"2022-11-21","text":"When I come back to São Paulo to make my internship at PontoTel Startup. I could live in my parents house at Guarulhs for \"free\" It would only take me 2 hours to go to work and 2 hours to go back home. I would lose 4 hours per day commuting, 20 hours per week and 80 hours per month. That's 960 hours per year. I knew that my time was my precious resource, so I decided to buy it. If you do basic math, I work 8 hours per day, 5 days per week, 4 weeks per month, that's 160 hours per month. I was earning R$1500.00, so my hour was R$9.35. I was losing 80 hours R$9.35 R$748 per month. I found a room to rent in São Paulo for R$400.00 and used these extra 4 hours to study and work a lot. All these 4 hours paid off a lot. I was able to work more, study more and learn more. I was also going to happy hours and networking events, which helped me to meet a lot of people. Additionally, I was able to create a tech community and find my co-founder for my own Startup."},{"id":"notes/career-risk#0.0","kind":"note","title":"Career Risk","heading":null,"tags":["career","risk"],"url":"/notes/career-risk","section":"Notes","date":"2026-10-24","text":"Most people does not optimize to take career risks. I have a lot of smart friends that are stuck on bad jobs (learning almost nothing, and without change of growth) that can't quit the job and start over"},{"id":"mentorship/career-transition#0.0","kind":"note","title":"Career Transition","heading":"Transição de Carreira","tags":["advice","mentorship","questions","async"],"url":"/mentorship/career-transition","section":"Mentorship","date":"2026-06-07","text":"Transição de Carreira Trabalho desde os 18 anos na mesma área(controle de acesso, CFTV e automação predial). Na empresa atual estou 100% home office e migrando para a área de cibersegurança(tirando certificações Fortinet) a pedido da empresa para poder dar suporte a área comercial. Não existe nenhum outro profissional de cibersegurança na empresa, não tenho a quem perguntar nada, estou sozinho desbravando esse tema. Me sinto inseguro pois a empresa é pequena e totalmente dependente de 1 única pessoa, o dono, se ele passar mal no dia do pagamento ninguém recebe. Sou MEI. A solução aqui é documentar tudo que o seu chefe sabe em texto, imagem e até vídeo se necessário Extrair o conhecimento dele e trazer para todos da empresa. Assim a empresa para de depender de só dele. Bom pra ele, bom pra você e bom para a empresa. Pode usar docusaurus para isso. Fazer artigos públicos com esse conteúdo também tem valor, só remover coisas muitos específicas. Isso melhora o seu SEO pessoal e te ajuda a conseguir a próxima vaga. Me manda que eu reviso os artigos. Você também pode pedir ajuda sobre cyber segurança no Twitter, discord, comunidades e ChatGPT. Quero migrar pra dev mas tenho dúvidas sobre qual roadmap estudar e como fazer essa migração sem reduzir meu nível salarial atual. Aprender a fazer um crud fullstack e deploiar ele em diversos lugares. Bem difícil não reduzir o nível salarial."},{"id":"mentorship/career-transition#0.1","kind":"note","title":"Career Transition","heading":"Transição de Carreira","tags":["advice","mentorship","questions","async"],"url":"/mentorship/career-transition","section":"Mentorship","date":"2026-06-07","text":"Você pode manter os dois empresas, ou ir pegando freelas até chegar num valor mínimo necessário. Vai ter que trabalhar dobrado até conseguir. Foca em JavaScript. Como meu horário comercial já está ocupado com o emprego atual, o que posso fazer a noite/final de semana pra me desenvolver e conseguir trabalhar como DEV? Freelas. Trabalhar para a Austrália Se não tiver trabalho focar em open source, e praticar coisas que as empresas precisam. Quem sabe fazer as coisas, fazer backend, fazer frontend. Já fiz alguns bootcamps, cursos de Alura, cursos no Youtube, tanto de front quanto de backend, mas me falta direção, preciso realmente de 1 roadmap. Não falta direção Falta mudar de passivo para ativo De ler, assistir para fazer O que você já fez? Focar em fazer projetos frontend, backend, fullstack, DevOps, leetcode, sadserver, exercícios, side projects Me sinto inseguro, não tenho confiança? Nobody knows what they are doing Fake until you make it Let the whole decide if you are good enough Do not put barriers onto yourself"},{"id":"notes/carl-gustav-jung#0.0","kind":"note","title":"Carl Gustav Jung","heading":null,"tags":["psychology","books"],"url":"/notes/carl-gustav-jung","section":"Notes","date":"2026-10-24","text":"Sincronity meaninful coincidence 2 events that happens without causuality that seems related The Man and his Symbols is a book about dreams and archetypes Universal symbols derived from the collective unconscious Hype is that the collective unconscious want"},{"id":"mentorship/certificates-are-worth#0.0","kind":"note","title":"certificates are worth","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/certificates-are-worth","section":"Mentorship","date":"2024-02-25","text":"certificates are worth \"Are there specific certifications or courses you would recommend to complement hands-on learning and personal projects?\" I prefer to learn from primary sources, and they are most books over courses on youtube, udemy. Textbooks are great to learn from primary source. You can learn from a variaty of sources like text, audio, video, books, courses, certificates. You should focus more on learning and knowledge. Prefer active learning methods where you need to do exercises, build something to validate that you are really learning. The real value of the \"certificate\" is the knowledge that it will give you. You only learn when doing, so do not focus a lot on getting the certificate badge."},{"id":"notes/change#0.0","kind":"note","title":"Change","heading":null,"tags":["startups","behavior"],"url":"/notes/change","section":"Notes","date":"2026-10-24","text":"Most people only change when a change happen to them Big companies (winners) only moves when something changes Startups should change/adapt before the change come"},{"id":"notes/change#1.0","kind":"note","title":"Change","heading":"Links","tags":["startups","behavior"],"url":"/notes/change","section":"Notes","date":"2026-10-24","text":"Links"},{"id":"notes/chrome-history-as-my-memory#0.0","kind":"note","title":"Chrome history as my memory","heading":null,"tags":["productivity","memory"],"url":"/notes/chrome-history-as-my-memory","section":"Notes","date":"2026-10-24","text":"I use chrome web browser history as my archive of links/websites that I visited. Every time someone ask a question I can easily find a good link to answer that"},{"id":"notes/chrome-history-as-my-memory#1.0","kind":"note","title":"Chrome history as my memory","heading":"Links","tags":["productivity","memory"],"url":"/notes/chrome-history-as-my-memory","section":"Notes","date":"2026-10-24","text":"Links Second Brain"},{"id":"notes/clojure#0.0","kind":"note","title":"Clojure","heading":null,"tags":["clojure","programming"],"url":"/notes/clojure","section":"Notes","date":"2026-10-24","text":"console.log (print &lt;variable) (require [taoensso.faraday :as far (require [clojure.tools.namespace.repl :refer [refresh docker run -p 8888:8000 amazon/dynamodb-local -jar DynamoDBLocal.jar -inMemory -sharedDb (clojure.pprint/pprint items) use let to do multiple lines [let ctx (println \"awesome\") ctx)"},{"id":"notes/closed-loop-payment-systems#0.0","kind":"note","title":"Closed loop payment systems","heading":null,"tags":["fintech","payments"],"url":"/notes/closed-loop-payment-systems","section":"Notes","date":"2026-10-24","text":"Woovi Closed loop payments simplifying the point-of-sale 1 payment method"},{"id":"mentorship/college-or-school-of-life#0.0","kind":"note","title":"college or school of life","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/college-or-school-of-life","section":"Mentorship","date":"2024-02-25","text":"college or school of life Do a College in these situations: You don't have the discipline to learn by yourself You are not used to self-taught You are not getting a job You and/or your family have enough money to sustain you for 4/5 years without earning a lot Prefer to do Public College in Brazil like USP, Unicamp, they are the best. You want to validate if you want to work in business or in research You want to work in FAANG, Big Tech, or move abroad where they value and require a degree. To get networking and friends and college experience. This network can help you go higher in your carrer later on. Do not do College in these situations, or for these reasons: You just want a degree, the diploma. You need money right it way You are a self-taught You already got a job as a developer Prefer a technical course or a bootcamp if you wanna go to market fast. Everything that you can learn on College you can learn outside college. Go check the syllabus of the course and read the textbooks. Do the exercises to really learn"},{"id":"mentorship/common-challenges-for-developers-in-the-beginning#0.0","kind":"note","title":"common challenges for developers in the beginning","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/common-challenges-for-developers-in-the-beginning","section":"Mentorship","date":"2026-10-24","text":"common challenges for developers in the beginning \"What are the most common challenges faced by developers early in their career and how can I prepare myself to face them?\" One common challenge is to decide what kind of developer you want to be: backend, frontend, fullstack, mobile, devops, other. My advice is to be more generalist at the beginning of your carrer, test everything until you decide what you like more to do. Another challenge is to be able to learn a lot of new things that come up every day. My advice for this is to focus more on concepts over implementations. Concepts are much more stable than implementation. HTML, CSS and JavaScript is much more stable than React. Learn to be invariant to implementations: learn React, Angular, Vue, and make it easy to learn a new framework as they show up. Learn databases, and be able to learn a new database faster. Always focus on how can you learn a new thing faster. Another challenge for juniors is to proof they are worth to hire. My advice is to do everything in public. Write articles, Open source your code. Deploy to production. You need proof of work. Get all public code challenges of companies that you want to work. Study the companies and how that you can solve their problems. You can also work for free to get experience You need experience. Use freelances or any work that show up to get experience Contribute to open"},{"id":"mentorship/common-challenges-for-developers-in-the-beginning#0.1","kind":"note","title":"common challenges for developers in the beginning","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/common-challenges-for-developers-in-the-beginning","section":"Mentorship","date":"2026-10-24","text":"source to get experience You need to master your tech tack, your IDE, terminal, automated testes, how to develop software properly with feature flags."},{"id":"mentorship/common-challenges-for-developers-in-the-beginning#1.0","kind":"note","title":"common challenges for developers in the beginning","heading":"References","tags":["advice","mentorship","questions","async"],"url":"/mentorship/common-challenges-for-developers-in-the-beginning","section":"Mentorship","date":"2026-10-24","text":"References"},{"id":"mentorship/common-mistakes-of-developers#0.0","kind":"note","title":"common mistakes of developers","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/common-mistakes-of-developers","section":"Mentorship","date":"2026-10-24","text":"common mistakes of developers \"What are common mistakes new developers make and how can I try to avoid them?\" Not focusing on programming fundamentals Not doing a lot of logic exercises, LeetCode Not learning algorithms and data structuring Not learning programming paradigm Object Oriented, Functional, Logic Not learnig more than one programming language Not learning more than one database Not using and learning to use terminal Not learn how to optimize their workflow, IDE Not coding against automated tests Not doing code review of everybody in their team Not leading a project/product Not leading a team Only coding Not writing RFC and POC before coding Not writing articles Not using Learning in Public Not learn how to make module code and decoupled code Not knowing system design, distributed system, and how to scale software Not instrumenting coding Not to be effective while debugging Not thinking in code as input, transformations and output. Not focusing on networking Not focusing on community Not focusing on social skills Being bad at communication and argumentation. Not making public talks. Only doing what they already know. In fact, you should avoid doing everything that you already know how to do Not getting more responsability"},{"id":"mentorship/common-mistakes-of-developers#1.0","kind":"note","title":"common mistakes of developers","heading":"References","tags":["advice","mentorship","questions","async"],"url":"/mentorship/common-mistakes-of-developers","section":"Mentorship","date":"2026-10-24","text":"References"},{"id":"notes/community#0.0","kind":"note","title":"Community","heading":null,"tags":["community","react"],"url":"/notes/community","section":"Notes","date":"2026-10-24","text":"Communities are a group of people that keep together for some reasons I've helped build the React Brasil community I've started creating a new meetup about react native sp I've didn't know much about React when creating the community, but React Native looked like the right tool to build products I've started this community to find other folks that was learning react native and then I've found Rafael This meetup turned into react sp meetup, that moved to gitter and then slack now we have more than 9k users"},{"id":"notes/community#1.0","kind":"note","title":"Community","heading":"Links","tags":["community","react"],"url":"/notes/community","section":"Notes","date":"2026-10-24","text":"Links"},{"id":"mentorship/community-events#0.0","kind":"note","title":"community-events","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/community-events","section":"Mentorship","date":"2024-02-25","text":"community-events \"Are there any tech communities, events, or networks you would recommend for someone in my situation?\" Tech community and events are awesome to network, learn, make friends You should join, and participate in an active matter on communities, events, meetups. Check in your city and online. Twitter is great for this Even if we have some bad actors, the upside payoffs You can get a lot of great opportunities over these."},{"id":"notes/completion#0.0","kind":"note","title":"Completion","heading":null,"tags":["productivity","tools"],"url":"/notes/completion","section":"Notes","date":"2026-10-24","text":"As developers we are used to code completion in our IDE, where the IDE suggest how to complete what we are typing. We also have bash completion to complete our commands in terminal Google search has completion when we type our query Gmail has phrase suggestion based on what we type iPhone suggest auto fill of input fields, and also password. I wanna completion for everything in my life I'd like word completion in notion and in any text input."},{"id":"notes/completion#1.0","kind":"note","title":"Completion","heading":"Links","tags":["productivity","tools"],"url":"/notes/completion","section":"Notes","date":"2026-10-24","text":"Links Digital Assistant"},{"id":"notes/complexity#0.0","kind":"note","title":"Complexity","heading":null,"tags":["computer-science"],"url":"/notes/complexity","section":"Notes","date":"2026-10-24","text":"shannon entropy information theory ascii table 2 7 128 0000000 hoje é quinta feira a 65 a 1 b 0010 tabela de compression: 0 0,1 00 00, 01, 10, 11 000 8 combinacoes"},{"id":"concepts-over-implementation#0.0","kind":"note","title":"Concepts over Implementation","heading":"Prefer Concepts over Implementation","tags":["concepts","implementation"],"url":"/concepts-over-implementation","section":"Essays","date":"2026-10-24","text":"Prefer Concepts over Implementation babel compilers webpack bundlers javascript programming logic sql databases redis cache serverless, k8s, aws containers, linux, vm, DNS, IP express HTTP/TCP/UDP react html, css, js"},{"id":"notes/constraint-are-good#0.0","kind":"note","title":"Constraint are good","heading":null,"tags":["architecture","design"],"url":"/notes/constraint-are-good","section":"Notes","date":"2026-10-24","text":"Most people think about constraint in a bad way I think constraint is good for many reasons Constraints gives you a limited set of options to perform or use. GraphQL is better than REST because it has more constraints, you can't do everything you want in GraphQL. You can't ask any data, and you can't return any data. You need to think first in the structure of the data that you want to expose to end users. Declarative provides a limit set of operations that you can perform. When you move to imperative you can do anything, but I argue that you should avoid this to reduce complexity. K8s declarative yaml are better than CDK before you can't do everything you want in your infra. So it is easier to maintain in the long run. Avoid trying to fix all edge cases in the low level building blocks. Constraints limits complexity as you need to work with a limited set of options. Constraints limit the number of Abstractions that you can use. Design System are constraints for your product UI, it does not let you do everything, as you want to keep consistency Constraints are about consistency. Habits are constraints to your daily life to make your more productive Constraints are about less choices Letting tools make decisions for you (Defer Understand Building Block gives you a limited set of basic blocks to work on, if you need something that is not available in any block you have 2 options:"},{"id":"notes/constraint-are-good#0.1","kind":"note","title":"Constraint are good","heading":null,"tags":["architecture","design"],"url":"/notes/constraint-are-good","section":"Notes","date":"2026-10-24","text":"1. create a new block increasing complexity 2. try to rethink your current needs"},{"id":"notes/consulting-professors#0.0","kind":"note","title":"Consulting/Professors","heading":null,"tags":["career","learning"],"url":"/notes/consulting-professors","section":"Notes","date":"2026-10-24","text":"If you never own the whole process of doing something, like having Skin in the Game, you never will \"taste\" reality (Reality has a lot of details I think this happens with who only works as a professor, you get so far from reality that you forget how it looks like."},{"id":"notes/core-api#0.0","kind":"note","title":"Core API","heading":null,"tags":["opensource","architecture"],"url":"/notes/core-api","section":"Notes","date":"2026-10-24","text":"Building Block Core API of any package should be very tiny A tiny API is easier to reason about it A tiny API is easier to maintain A tiny API is easier to learn Add extensions points to your API to make it extensions and cover all user needs a tiny API is easier to make new releases a tiny API needs less tests What should be the core API of react-native-camera? take a picture render picture preview record a video What about filters in the photo? another package What about MLKit like face-detection and text detection? 2 new packages"},{"id":"notes/creating-improving-removing#0.0","kind":"note","title":"Creating, Improving, Removing","heading":null,"tags":["engineering","startups"],"url":"/notes/creating-improving-removing","section":"Notes","date":"2026-10-24","text":"Most organizations only value creating new things (features) You also create value when you improve the efficienty of current systems And also when you remove complexity and bad systems."},{"id":"notes/creation-process#0.0","kind":"note","title":"Creation Process","heading":null,"tags":["creativity","writing"],"url":"/notes/creation-process","section":"Notes","date":"2026-10-24","text":"Any creation process is easier if you not start from a \"blank canvas\" When doing Writing it is better to start from writing pieces instead of pulling ideas out of your mind. If you try to start writing directly from your mind, you need first to transform your mind ideas into text, and them combine them. Mind has a process as the ideas are not so structure, and also subjectivy When starting coding, it is easier to start off from piece of code or boilerplate. It is easier to combine existing code with code that you're gonna build on the fly. Another benefit of using existing code, it the code worked before it has more changes to keep working now. When doing design start with some basic elements, or existing design. Modify to your requirements. It is much easier to combine pre-existent UI elements instead of drawing everything using a pencil. What about creating a new music? or a remix? isn't it to start with some sounds and compose them? What about video? you can have some set of images to compose in the video, some set of predefined animations, some set of short videos. start from building blocks Where good ideas come from"},{"id":"notes/creative-thinking#0.0","kind":"note","title":"Creative Thinking","heading":null,"tags":["creativity","productivity"],"url":"/notes/creative-thinking","section":"Notes","date":"2026-10-24","text":"Creative Thinking is when you create new fresh ideas Over Thinking is to create ideas based on other ideas One way to avoid blocks in creative thinking is to always do a bit of creative thinking everyday, make creative thinking a habit. To avoid blocks try to do other types of creative thinking, instead of writing, try drawing. Instead of drawing, trying code. Instead of backend, try frontend."},{"id":"notes/criar-cultura-do-zero#0.0","kind":"note","title":"Criar cultura do zero","heading":null,"tags":["culture","startup"],"url":"/notes/criar-cultura-do-zero","section":"Notes","date":"2026-10-24","text":"emanuel Como alinhar a cultura da empresa com o cliente e com o time? Como funciona o Learning in public dentro da Woovi? seria cultural? Como funciona a cultura de feedback dentro da Woovi? vitor cultura de não dar block por merge e não precisar esperar PR Existe um limite dessa cultura? (Ex tamanho de time etc) edumaciel 1. Quais são os fatores analisados para que seja criada uma cultura 2. Como implementar uma nova cultura em um time de desenvolvedores 3. Quais cuidados deve-se tomar ao escolher uma cultura, e começar a aplica-la 4. Como mensurar se a cultura implementada tem surtido efeitos positivos ou negativos 5. Uma cultura deve ser criada a partir de um senso comum das empresas, ou observando os processos internos? Cultura precisa necessariamente ser presencial/hibrido Se nao, quais formas de cultivar cultura de forma remota 100%"},{"id":"notes/css#0.0","kind":"note","title":"CSS","heading":null,"tags":["css","frontend","design"],"url":"/notes/css","section":"Notes","date":"2026-10-24","text":"Avoid having too much CSS/styles in the product code Your Design System should use functional css to make it possible to extend it Your design system should have constraints to avoid bad design The design system should be able to change theme colors, as customers usually customize the product to their brand and workflow functional css is a much better abstraction then other css approaches css in js is better because of colocation styled-components is a component style address the naming problem convention naming naming pattern styled-system and tailwind follow naming convention to build functional css and compose styling. saas, css modules, less, BEM does not address this problems The product code should just be the use of building blocks from the design system There is no shortcut for CSS, CSS has a lot of details, you need to keep adding keys and learn how they interact with each other The build blocks for layout are flexbox and css grid, you should learn both. Learn CSS Flexbox and CSS grid can solve most of the layout problems Prebuilt blocks"},{"id":"notes/css#1.0","kind":"note","title":"CSS","heading":"Links","tags":["css","frontend","design"],"url":"/notes/css","section":"Notes","date":"2026-10-24","text":"Links"},{"id":"notes/css#2.0","kind":"note","title":"CSS","heading":"References","tags":["css","frontend","design"],"url":"/notes/css","section":"Notes","date":"2026-10-24","text":"References CSS Practice"},{"id":"notes/css-practice#0.0","kind":"note","title":"CSS Practice","heading":null,"tags":["css","frontend","design"],"url":"/notes/css-practice","section":"Notes","date":"2026-10-24","text":"I've decided to practice converting some landing page and design to code This master will help me be a better css coder Smart Home System VPN landing page Final Version Luan Links Lais Links \"copy\", rebuild by youself this websites dribble videos resources: images search related images on internet Blog Mobile Css Practice Responsive testing and development Remove things from image Responsive We can divide css in many parts Layout: style used to control how components/elements lay out in the screen Components: group of reusable elements together to represent something"},{"id":"culture#0.0","kind":"note","title":"Culture","heading":null,"tags":["culture","book"],"url":"/culture","section":"Essays","date":"2022-11-21","text":"Culture is what people do when you are not looking The culture is build based on what you do, not what you say. A good culture is build on principles, not rules. Rules are too strict, principles help people to make the right decisions."},{"id":"culture#1.0","kind":"note","title":"Culture","heading":"Reference","tags":["culture","book"],"url":"/culture","section":"Essays","date":"2022-11-21","text":"Reference What You Do Is Who You Are"},{"id":"notes/dapps-eth-defi#0.0","kind":"note","title":"dApps eth defi","heading":null,"tags":["crypto","ethereum"],"url":"/notes/dapps-eth-defi","section":"Notes","date":"2026-10-24","text":"investiments charity loking staking put some coins there ide for smart contract launchpad ico initial coin offer farming mining memepad decentralized autonomous organizations nft non fungible tokens unique asset on ethereum smart contracts decentralize finance Products that let you borrow, save, invest, trade, and more."},{"id":"notes/decisions#0.0","kind":"note","title":"Decisions","heading":null,"tags":["productivity","decision-making"],"url":"/notes/decisions","section":"Notes","date":"2026-10-24","text":"We need to make many decisions in a daily basis Decisions takes our energy and time Try to reduce your decisions to have more energy and time to focus on what matters How to Take Smart Notes"},{"id":"notes/deep-dive#0.0","kind":"note","title":"Deep Dive","heading":null,"tags":["learning"],"url":"/notes/deep-dive","section":"Notes","date":"2026-10-24","text":"You can only deep dive if you know how to swim You can learn advanced stuff if you haven’t mastered the basics Defer Understand If you try to deep dive before learning to swimming you drown and feel bad about the learning experience. When you are at the edge: Bleeding edge You need to deep dive as there is not much in the surface. You need both holistic and deep dive details views of the problems to provide the best solutions to them. A holistic only will miss important details that you can only see when you zoom in If you only focus on small details you will be stuck in a local solution"},{"id":"notes/defer-understand#0.0","kind":"note","title":"Defer Understand","heading":null,"tags":["learning"],"url":"/notes/defer-understand","section":"Notes","date":"2026-10-24","text":"Defer is when you let something to do in the future When learning something you don’t need to understand everything related to it You can defer some parts to the future When learning React, focus on React using create-react-app, an opinionated tool, first. Defer Babel, webpack. It does not mean that you don’t need to learn these stuff. It means you can go back to them when you get used to that you are learning. Understanding is overrated, I don’t understand every single detail, I prefer to learn high level concepts first and then deep dive when needed A good Zine for this is this one"},{"id":"notes/derivative#0.0","kind":"note","title":"Derivative","heading":null,"tags":["thinking","math"],"url":"/notes/derivative","section":"Notes","date":"2026-10-24","text":"If you studied calculus you know the concept of a derivative of a function. I'm not a mathematician, my simple definition is that derivate of a function is the rate of change of a given point. If you take the second derivate equal zero you can find the minimum and/or maximum of a function. This is useful in machine learning where you want to optimize your loss function. Gradient descent algorithm is basically calculate the gradient, derivates of all dimensions of your function, and move a bit in that direction that will let you find the zero of the function being optimized. One thing that I like to do is to apply concepts of one area into another. We can use derivative term as second order effects of a given fact. What is the derivative of covid19? Derivative in this phrase is all about what these changes will affect the world in the long run. Let's derive some hypothesis: Covid19 changed our society in many ways. It changed how we worked, most of the companies moved to remote work to avoid contamination. Some companies decided to be remote work only. Some companies decided to be remote forever. What will happen in the long run? remote work will be more common, or we are going back to the office? It affected a lot small business that only had a physical location to sell their goods. Some of them broke, some of them moved to sell their good using e-commerce with delivery for"},{"id":"notes/derivative#0.1","kind":"note","title":"Derivative","heading":null,"tags":["thinking","math"],"url":"/notes/derivative","section":"Notes","date":"2026-10-24","text":"short location and shipping for big ones. Will all stores have a digital experience even when everything is back to \"normal\"? it changed how students have to learn. As most schools moved to an online experience, most people feel that the \"watching\" is not enough to learn and master the subject, they were watching before inside a classroom."},{"id":"notes/design#0.0","kind":"note","title":"Design","heading":null,"tags":["design"],"url":"/notes/design","section":"Notes","date":"2026-10-24","text":"Design is part of your everyday live, design is everywhere You can design Design needs a lot of practice, if you have a good taste you going to do great designs in the long run, but the first ones won't be good Design is hard if you start with in a Blank Canvas To make things easier I need to start with Templates To learn more about Design I will learn and practice using Design+Code is also a good content Design is everywhere reread Design of Everyday Things You need Illustrations to make your Design good unDraw provide open source illustrations so you can mix and match Humans has a similar idea providing building blocks to remix illustrations"},{"id":"notes/design#1.0","kind":"note","title":"Design","heading":"Links","tags":["design"],"url":"/notes/design","section":"Notes","date":"2026-10-24","text":"Links CSS"},{"id":"notes/design-for-learning#0.0","kind":"note","title":"Design for Learning","heading":null,"tags":["learning","design"],"url":"/notes/design-for-learning","section":"Notes","date":"2026-10-24","text":"MindStorms meaning of functions (label them) meaning of parameters can you follow the flow? (what happens from one step to another) can you see the state? (how the state changes over time) can you create by reacting? can you create by abstracting? (creating a variable, creating a function) visualize data, not code we need better autocompletion"},{"id":"notes/design-practice#0.0","kind":"note","title":"Design Practice","heading":null,"tags":["design","learning"],"url":"/notes/design-practice","section":"Notes","date":"2026-10-24","text":"interactive learning are almost games focused in teaching you something CSS Practice"},{"id":"notes/design-system#0.0","kind":"note","title":"Design System","heading":null,"tags":["design","frontend"],"url":"/notes/design-system","section":"Notes","date":"2026-10-24","text":"Design system contain the building blocks of UI elements/atoms to build your product UI It should allow extensions using functional CSS Design system should define list of fonts Design system should define list of possible spacing (so everything is spaced with the same style) Design system is about constraint, you limit what you can do to avoid creating weird UI, and keep consistency"},{"id":"notes/developer-measure-output#0.0","kind":"note","title":"developer measure/output","heading":null,"tags":["productivity","engineering"],"url":"/notes/developer-measure-output","section":"Notes","date":"2026-10-24","text":"quantity: is the developer producing more? quality: is the developer shipping with fewer bugs? speed: is the developer shipping faster?"},{"id":"notes/dichotomy#0.0","kind":"note","title":"Dichotomy","heading":null,"tags":["thinking","programming"],"url":"/notes/dichotomy","section":"Notes","date":"2026-10-24","text":"Dichotomy is to divide the whole in 2 parts We have many dichotomies in life and in code server/client we want to do some work on the server and some work in the client sync/async we want to do some sync work and some async work build/runtime we want to do some work at build time and some work at runtime static/dynamic we want to some static and dynamic code analysis preload-prerender/defer load-defer render we want to preload code and data before we need it, but we want to defer code and data until we need it. wip/done we need wip to move forward, but we need to finish the wip to move forward"},{"id":"notes/digital-assistant#0.0","kind":"note","title":"Digital Assistant","heading":null,"tags":["productivity","ideas"],"url":"/notes/digital-assistant","section":"Notes","date":"2026-10-24","text":"I'd like some help here! I'd like to be assistant when taking any decision I'd like to have word completion not only in mobile but also on desktop in any app, not only in chrome, but also in notion and everywhere I'd like to fix typos and other writing styling right now. I'd like fast code completion for life We can build a digital assistant as a chrome extension to hook in any text input and improve our writing approach (check grammarly approach) What about hook in any app to provide assistant as a whole system? We can think of a digital assistant as a Thinking Tools as it would augment our capabilities of action. MVP The MVP is to build a chrome extension that hook in the text input. It should provide word completion."},{"id":"notes/digital-assistant#1.0","kind":"note","title":"Digital Assistant","heading":"Links","tags":["productivity","ideas"],"url":"/notes/digital-assistant","section":"Notes","date":"2026-10-24","text":"Links NoCode Thinking Tools"},{"id":"notes/digital-garden#0.0","kind":"note","title":"Digital Garden","heading":null,"tags":["writing","publishing"],"url":"/notes/digital-garden","section":"Notes","date":"2026-10-24","text":"A digital garden is a place where I can show my content but I can also change the \"engine\" of it. If you keep pushing all content websites you're gonna hit some \"limit\" It won't be able to handle all your workflow One way to make it possible to handle all your crazy ideas is to have access to the codebase, and own your publication You can start simple with simple text blocks, and keep adding more blocks are your requirements changes over time. It is a process of curate your output process"},{"id":"notes/digital-garden#1.0","kind":"note","title":"Digital Garden","heading":"Links","tags":["writing","publishing"],"url":"/notes/digital-garden","section":"Notes","date":"2026-10-24","text":"Links CSS Design The era of Content Builders"},{"id":"notes/disruption#0.0","kind":"note","title":"Disruption","heading":null,"tags":["startups","strategy"],"url":"/notes/disruption","section":"Notes","date":"2026-10-24","text":"It won by not competing Disrupt innovation does not compete with incumbents They offer something different Find an asymmetric advantage You have to build the whole vertical Incumbents won’t adapt"},{"id":"do-not-answer-twice#0.0","kind":"note","title":"Do not answer Twice","heading":null,"tags":["writing","scaling","seo"],"url":"/do-not-answer-twice","section":"Essays","date":"2022-11-28","text":"I have a principles that it is called \"Do not answer twice\" The idea is that I don't want to answer the same question more than once. This sounds like a crazy optimization idea, but in my scale it is needed. After I've founded React community in Brazil, and start answering many questions every day. Then, I realize that most of the questions will repeat themselves once in a while, like a cycle. I decide to stop answer questions in private, and asking people to ask their questions in public on Twitter and tag me. I did a retweet of their questions, and answered them in public. So, you someone else asks the same question, I just reuse my answer. I write answers as tweets, tweet threads, blog posts, articles, and here in my zettelkasten."},{"id":"notes/doing-the-right-thing#0.0","kind":"note","title":"Doing the right thing","heading":null,"tags":["career","engineering"],"url":"/notes/doing-the-right-thing","section":"Notes","date":"2026-10-24","text":"Sometimes someone in your organization does not wanna do the right thing (maybe your manager, maybe your boss, or CEO) they could decide not to invest in having tests in place not having storybook in place not choosing the right tool for the right job if you do belive this is the right thing to do, spend some time doing this. If this will save you time in the long run it is a good bet"},{"id":"notes/drawing#0.0","kind":"note","title":"Drawing","heading":null,"tags":["communication","tools"],"url":"/notes/drawing","section":"Notes","date":"2026-10-24","text":"Sometimes text is not enough, and an image is worth a thousands words Use excalidraw or other tool to create simple diagrams, state machines and to explain more complex things use the right medium for the right message"},{"id":"notes/drawing#1.0","kind":"note","title":"Drawing","heading":"Links","tags":["communication","tools"],"url":"/notes/drawing","section":"Notes","date":"2026-10-24","text":"Links"},{"id":"notes/driving-saas-success-using-key-metrics#0.0","kind":"note","title":"Driving SaaS Success using Key Metrics","heading":null,"tags":["saas","metrics"],"url":"/notes/driving-saas-success-using-key-metrics","section":"Notes","date":"2026-10-24","text":"building an unicorn gross margin cac ltv sales hiring mktg spend sdr output 3 things growth prevents competitors to reach market profitability cash how you survive if cash flow is bad for one customer unit economics Can I make more profit from my customers than it costs me to acquire them Cost to Acquire a Customer CAC &lt; LTV (much bigger) LTV 3x CAC Customer Churn Dollar Churn expansion revenue from existing customers revenue lost from churning customers if we only have one SaaS product, whawt more can we sell the customer? multiple versions of your product more feature depth of usage (transactions) more users how many months to recover cac? months to recover CAC &lt; 12 months sales complexity more CAC use engineering/product to bring CAC down repeatable and scalable OTE &lt; 6x Quota (benefits) On Target Earning cost of sales person"},{"id":"notes/editor-react-conf#0.0","kind":"note","title":"Editor - React Conf","heading":null,"tags":["frontend","react"],"url":"/notes/editor-react-conf","section":"Notes","date":"2026-10-24","text":"Content Editable is an attribute that let any element to be editable Content Editable is usually use to build rich text editors, or markdown editors, or any kind of editors. The era of Content Builders What you need for a Editor? You need a model for the document You need a map 1-1 from document to visible screen (usually DOM or native nodes) You need to handle selections in a good way You need to handle carets You need to define edit operations based on key press and mouse clicks How Medium editor works? it has sections and paragraphs a paragraph contains text and formatting, and also a layout information a section describes background for a sublist of paragraphs How Notion editor works? it has a list of basic blocks (text, page, todo list, image, kanban, calendar, database) each basic block has its own properties You edit one block per time. React Conf BR Drafjs: from RichText to Content Builders"},{"id":"notes/effective-twitter#0.0","kind":"note","title":"Effective Twitter","heading":null,"tags":["twitter","writing","audience"],"url":"/notes/effective-twitter","section":"Notes","date":"2026-10-24","text":"If you still have a twitter account you can use it to build and grow your audience The audience is the people that followed you based on the content you create everyday. The bigger your audience the bigger your reach. You can use the audience for many reasons, make it easy to find good people to hire to your company, to sell products or courses, spread your ideas. @jabur funis de vendas e contratação funnel top Time When you post influences how many people are wake, and how many will interact/engage with your tweet Prefer 8am to 8pm of your audience timezone. I try to overlap Brazil and US timezone. Content A Tweet with just a text provided fewer context and could not be understand well by everybody. Adding images, gifs, video could improve engagement of your tweets Links with social media preview also improve engagement Threads helps you to provide info that won’t fit in a single tweet, or a list of things you wanna share. It could also be a short blog. Tagging account could also increase reach if the people tagged has a lot of followers. Sharing Only posting on twitter could not be enough, try to post in other communities: slack, discord, Facebook groups, WhatsApp groups, telegram and so on. Also send to friends, and ask for retweets to improve reach Send it to friends, and ask for retweets to improve your reach. Remember, only posting on Twitter could not be enough, try to"},{"id":"notes/effective-twitter#0.1","kind":"note","title":"Effective Twitter","heading":null,"tags":["twitter","writing","audience"],"url":"/notes/effective-twitter","section":"Notes","date":"2026-10-24","text":"post in other communities: slack, discord, Facebook groups, WhatsApp groups, telegram, and so on. morry improve Audience and consistency Tweeting about other topics not related to the audience you wanna reach could give you some unfollows, like tweeting about politics. However, I don’t care about this, as I am not only a tech content creator. Bio You Bio is the first thing that someone will read about you and your profile. have a good one. emojis could help you create a brand choose a good username as well frequência ajuda? Postar conteúdo com menos frequência mas com mais insights? conteúdo com menor valor agregado de conhecimento mas com uma carga emocional grande é bom? Por exemplo, postar \"o JavaScript ajudou a minha família, me deu uma casa...\" como você escolhe postar em inglês ou português? joao pedro conclusion With that in mind, twitter can be a great tool t joao Learning Twitter is the best way to learn new things with people around the world. @wellerson how to keep with all the tweets? bookmark tweets that you wanna read more deeply transform some tweets in article/zettel in your zettekasten morrys content before time Twitter"},{"id":"notes/entropy#0.0","kind":"note","title":"Entropy","heading":null,"tags":["programming","code-quality"],"url":"/notes/entropy","section":"Notes","date":"2026-10-24","text":"Code entropy adding a new prop to your react component increases entropy adding a new parameter to your funciton increases entropy more code more entropy more parameters more entropy more customization more entropy Broken windows Slow code Half refactors Wrong abstraction will make it hard to do simple and common things"},{"id":"mentorship/essential-tools#0.0","kind":"note","title":"essential tools","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/essential-tools","section":"Mentorship","date":"2024-02-25","text":"essential tools \"Are there specific tools, frameworks, or resources that you consider essential for a modern developer?\" IDE WebStorm, VSCode ChatGPT Copilot Terminal OpenLens Slack Markdown GitHub Twitter Git Activity Monitor Docker React Node Bash Automated Tests CI/CD Deploy automation k8s, serverless, terraform, ansible issues pull requests code review RFC POC feature flag thunk development"},{"id":"notes/eth#0.0","kind":"note","title":"ETH","heading":null,"tags":["crypto","blockchain"],"url":"/notes/eth","section":"Notes","date":"2026-10-24","text":"Ethereum is like Bitcoin but with turing complete smart contracts ECR-20 token tokens only exist inside a contract 0eth to transfer token gas fee ecr-20 complaint fungible (same value for each token, like money) totalSupply, balanceOf, transfer, transferFrom, approve, and allowance. In addition, you can specify optional functions, such as name, symbol, and decimal liquidity pool unisawp x y k (k constant, total liquidity) eth erc-20 token erc-20 erc-20 token ERC-721 non fungible token each token has a different value property erc-721 erc-165 interface erc ethereum request for comment proof of work more energy wins proof of stake you stake (put some eth money), you someone is randomly assign to validate the block, if you cheat you loose your stack Practical nft opensea rinkeby address test"},{"id":"notes/evergreen#0.0","kind":"note","title":"Evergreen 🌲","heading":null,"tags":["software"],"url":"/notes/evergreen","section":"Notes","date":"2026-10-24","text":"Evergreen is a project that only current the latest active LTS of technology to make it simpler, and faster. it is similar to Bleeding edge but removing the legacy part."},{"id":"notes/excel#0.0","kind":"note","title":"Excel","heading":null,"tags":["tools","productivity"],"url":"/notes/excel","section":"Notes","date":"2026-10-24","text":"Excel is a software to process spreadsheet/tabular data Excel can be think as one of the first Thinking Tools. You put a lot of number, and start building thinks on top of it, using formulas per cell or Visual Basic Scripts. The basic building block (Where good ideas come from The era of Content Builders is the cell. A cell can contain a basic type (string, number, currency, date) A cell can contain formatting (background color, color, font-size and more) You can span a cell to contain more than one column You can use Excel to import (Importing data using csv xlsx or export data. Airtable is the new \"Excel\". Acts likes a spreadsheet but gives you the power of a database You can see the same data in different ways in Airtable: Calendar, Grid, Kanban, Gallery, Form"},{"id":"notes/feature-flag#0.0","kind":"note","title":"Feature Flag","heading":null,"tags":["software","development"],"url":"/notes/feature-flag","section":"Notes","date":"2026-10-24","text":"Feature flag enable you modify software in runtime Temp feature flag it is used while development a big feature to make sure we won't break current behavior, so we can merge fast and test in production without affecting all users it can be used to release features to a few beta users or handle deploy rollouts Links"},{"id":"notes/feedback-loop#0.0","kind":"note","title":"Feedback Loop","heading":null,"tags":["mental-models","systems"],"url":"/notes/feedback-loop","section":"Notes","date":"2026-10-24","text":"It is another great Mental Models We can have a Positive Feedback Loop where we reinforce some, A influences B that influence A. It results in growth or declines, it is based on reaction We also have a negative feedback loop that would will make the system stable"},{"id":"notes/finantial-risk#0.0","kind":"note","title":"Finantial Risk","heading":null,"tags":["finance","risk"],"url":"/notes/finantial-risk","section":"Notes","date":"2026-10-24","text":"12042 Bacharelado em Ciências Atuariais"},{"id":"notes/fintech-legacy-overhead#0.0","kind":"note","title":"fintech legacy overhead","heading":null,"tags":["fintech"],"url":"/notes/fintech-legacy-overhead","section":"Notes","date":"2026-10-24","text":"fintech and legacy overhead kyc med statement withdraw sanity check ledger plugin js security partner login and app.openpix.com.br sms (zenvia, twilio) articles/documentation multiaccount giftback cashback shopper"},{"id":"notes/first-impression#0.0","kind":"note","title":"First Impression","heading":null,"tags":["writing","newsletter"],"url":"/notes/first-impression","section":"Notes","date":"2026-10-24","text":"First impression is when you first interact with something or someone. First impressions can be good or bad It is hard to change the first impression, so you need to focus to improve it Newsletter My Newsletters first impression is not good right now. How can I get it better? Explain more about my newsletters topic More about me My social links"},{"id":"fixing-stuff#0.0","kind":"note","title":"Fixing Stuff","heading":null,"tags":["fixing","debugging","contributing"],"url":"/fixing-stuff","section":"Essays","date":"2026-10-24","text":"Most people find a problem or a bug and let them go unfixed. I'm not like that. I'm a fixer. I fix things. I fix bugs. I fix problems. I fix stuff. When I find a problem, I try to see if this is an easy fix. If this is an easy fix, I fixed it right all way. Otherwise, if the fix is not so easy, I try to ask for help on twitter, discord, github, stackoverflow. If the problem is not solved after sometime, I try to fix it myself again."},{"id":"notes/flight#0.0","kind":"note","title":"Flight","heading":null,"tags":["management","culture"],"url":"/notes/flight","section":"Notes","date":"2026-10-24","text":"if you never feel any discomfort about your level of transparency, you probably aren’t transparent enough You can’t trust someone’s ‘yes’ until you hear their ‘no As employees, they have a right to know about the business they are part of ADULTS DON’T LIKE BEING TOLD WHAT TO DO People want to be challenged. They want you to ask them to step up and take responsibility for something hard. They want to be needed, and they want to have agency in the doing of it."},{"id":"mentorship/focus-on-english#0.0","kind":"note","title":"focus on english","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/focus-on-english","section":"Mentorship","date":"2024-02-26","text":"focus on english \"Should English be my focus?\" If being a developer is easy for you, focus on English. Learning English will open new horizons for you, providing access to a wealth of study materials, additional forums for discussion, and a vast amount of information."},{"id":"notes/founding-vs-inheriting#0.0","kind":"note","title":"Founding vs Inheriting","heading":null,"tags":["politics","innovation"],"url":"/notes/founding-vs-inheriting","section":"Notes","date":"2026-10-24","text":"political institutions favor inheriting inherited people don't know how to do things from first principles, so they can't innovate Era na substack; falava sobre organizações e políticas que faliram porque as pessoas atualmente não sabem como fazer porque elas não criam mais; \"George Washington\" acho que tinha por causa da constituição; \"99% read-only\""},{"id":"mentorship/frontend-hiring-questions#0.0","kind":"note","title":"frontend hiring questions","heading":"frontend questions","tags":["advice","mentorship","questions","async"],"url":"/mentorship/frontend-hiring-questions","section":"Mentorship","date":"2024-02-25","text":"frontend questions \"Good backend hiring question?\" how to scale frontend? a good answer is to use a design system how to scale css? use design system What do you test on the frontend? integration test, test the behavior, using testing library, test that when filling out a form and clicking the submit button, the api is called with the correct data how do you create a new page? does it start with a component and then break it down (top down), or does it start with base components and then compose them? a good answer would be to use top-down, because segmenting (componentizing) is very difficult if you don't know how it will be structured, another good answer is to use only the components that already exist in the design system if a component doesn't exist in the design system for a page you need to do what do you do? A good answer would be to discuss with the designer whether to use an existing component or add the new component to the design system. what is the tradeoff of adding a new component to a design system? the more components, the more complexity and work to maintain, the fewer simpler components how to organize a design system? A good answer is to have documentation, using docusuarus and/or storybook how do you deal with data fetching? The best answer would be relay, but it only works if you have graphql, another answer would be something more level and declarative"},{"id":"mentorship/frontend-hiring-questions#0.1","kind":"note","title":"frontend hiring questions","heading":"frontend questions","tags":["advice","mentorship","questions","async"],"url":"/mentorship/frontend-hiring-questions","section":"Mentorship","date":"2024-02-25","text":"like react-query, data fetching by hand is always an error create a new component or a new prop? prefer a prop if the \"new behavior\" converges with the existing component, otherwise create a new component how to start a new design system? decide the initial basic components, typography, scaping, buttons what is important is a design system? consistency, maintainability, scalability, typography, basic components, storybook, documentation when to use SSR? when you need perf and SEO, SSR is to render the frontend in the server and hydrate what is hydration? it is the process of conciliating the server rendered html with the client rendered html how to improve SEO? use SSR, use meta tags, use structured data, use sitemap, use robots.txt, make site fast how to improve frontend performance? lazy loading, RSC, SSR, tree shaking, remove big packages when to virtualize a list? when we are handling big number of items when to memo a component? when you need to render a lot of number of this components how to manage state? prefer local state using useState, only when needed use useContext, move data fetching to something else like relay, react-query how to build complex forms with validations prefer use packages like formik and yup how to deploy frontend you can deploy on s3 and expose then using nginx, cloudfront or cloudflare pages, any CDN works."},{"id":"notes/functional-programming#0.0","kind":"note","title":"Functional Programming","heading":null,"tags":["programming"],"url":"/notes/functional-programming","section":"Notes","date":"2026-10-24","text":"The building block of functional programming is a function A function is an abstraction that receives an input and produces an output f(x) y A pure function is a function that returns the same return for the same input. Pure functions are easy to test as you don’t have to mock external parts and there is no side effects. You can functional programs composing functions. Types define which values are valid for a given variables or function argument or return. We can only compose functions that one"},{"id":"notes/future-proof#0.0","kind":"note","title":"Future Proof","heading":null,"tags":["software","productivity"],"url":"/notes/future-proof","section":"Notes","date":"2026-10-24","text":"Something is future proof if it will work in long run When you use a platform to build your content, this platform can be discontinued the platform can change their terms of service the platform can censure you the platform won't be anonymous the platform can remove your data Future Proof Code Future Proof code will work well even if the requirements changes over time Link Productivity"},{"id":"notes/game-theory#0.0","kind":"note","title":"Game Theory","heading":null,"tags":["economics","mental-models"],"url":"/notes/game-theory","section":"Notes","date":"2026-10-24","text":"Game Theory is the study of games with agents that perform the best action. The classic game is the Prisoner's Dilemma where 2 agents that can't communicate with each other don't cooperate and loose instead of gain if they cooperate with each other."},{"id":"notes/gap#0.0","kind":"note","title":"Gap","heading":null,"tags":["creativity","learning"],"url":"/notes/gap","section":"Notes","date":"2026-10-24","text":"When you go to creativity work, you get to it because of Taste But there is a GAP, where you have the taste, but you produce bad things You need to do a lot of work, in a lot of time to improve and pass the GAP phase CSS Practice You should feel the GAP A book/article/software and everything that you build or create needs to feels the gap"},{"id":"notes/generalist#0.0","kind":"note","title":"Generalist","heading":null,"tags":["career","learning"],"url":"/notes/generalist","section":"Notes","date":"2026-10-24","text":"generalist are robust to automation automation will automate a specific task, it can't be easily generalized generalist are better for long term solutions for holistic solutions smart generalist"},{"id":"notes/getting-things-done#0.0","kind":"note","title":"Getting Things Done","heading":null,"tags":["productivity","books"],"url":"/notes/getting-things-done","section":"Notes","date":"2026-10-24","text":"“The principle of GTD is to collect everything that needs to be taken care of in one place and process it in a standardised way. Excerpt From: Sönke Ahrens. “How to Take Smart Notes: One Simple Technique to Boost Writing, Learning and Thinking for Students, Academics and Nonfiction Book Writers.” Apple Books. it creates a structure for our work, as we can have distraction from the outside world but also from our mind you need to have a holistic view, an unimportant task becomes urgent. your brain will only let go if your system taken care of it read"},{"id":"notes/git-branching#0.0","kind":"note","title":"Git branching","heading":null,"tags":["git","development"],"url":"/notes/git-branching","section":"Notes","date":"2026-10-24","text":"People usually stick with the first solution or approach they find to solve their problem. Best practice is think as the silver bullet for a problem without even thinking about it. When you pick a best practice without thinking you are outsourcing all the decisions and choices to the own who created the best practice. It could be the wrong tradeoffs for your problem. Why do we use git for software development? We need a way to distribute/decentralize the development of the software without one developer causing issues to another one. After the code was made in isolation, we need to integrate it in the main repository. This is usually made using pull requests. Pull requests enable you request reviews/feedbacks of your code before adding in the main branch. It also let you discover if your approach break any existing behavior or tests the size of pull requests matters a lot. Small pull requests are easy and faster to review and have less risky of introductions bugs or regressions. What is wrong about git flow? What is wrong about develop branch?"},{"id":"notes/global-state#0.0","kind":"note","title":"Global State","heading":null,"tags":["react","frontend","relay"],"url":"/notes/global-state","section":"Notes","date":"2026-10-24","text":"Redux single immutable atom for the whole UI hard to code split hard to optimize Selector: useSelector Recoiljs multiple immutable atoms for the UI it works with sync and async data it has support to derived data optimized to avoid re-rendering parts that don't consume an atom getters vs setters Selector: useRecoilValue Context React context can only has one single value, so you need to use subscribe pattern to avoid re-rendering all components that consume them Selector: useContext Relay Single store Selector: GraphQL fragments Mobx Observables Semi Global Formik: form field state should be able to be validated together one form field change should not re-render all other fields, so it has good perf Links"},{"id":"notes/govern-vs-business#0.0","kind":"note","title":"Govern vs Business","heading":null,"tags":["politics","startups"],"url":"/notes/govern-vs-business","section":"Notes","date":"2026-10-24","text":"Why we don’t have disrupt in government? Because we can only do 1 experiment at a time It takes us 4 years to experiment again Startups and competition let us test many variations to find a better solution Govern is slow and stable Business is fast and it changes"},{"id":"notes/great-content#0.0","kind":"note","title":"Great content","heading":null,"tags":["content","reading"],"url":"/notes/great-content","section":"Notes","date":"2026-10-24","text":"stratechery"},{"id":"notes/growth-loops#0.0","kind":"note","title":"Growth Loops","heading":null,"tags":["growth","startups"],"url":"/notes/growth-loops","section":"Notes","date":"2026-10-24","text":"You can divide growth in 2 parts Acquisition loop where you get more users to your platform, and let current users spread your product using sharing strategy or word of moutn Engagement loop where you keep the current users engaged using notifications based on user interaction with the platform A loop is better than a funnel, as the end of the loop will be used to increase the beginner of the strategy"},{"id":"notes/hability-to-handle-uncertainty#0.0","kind":"note","title":"Hability to handle uncertainty","heading":null,"tags":["mentoring","learning"],"url":"/notes/hability-to-handle-uncertainty","section":"Notes","date":"2026-10-24","text":"The best people to work with are people that can handle uncertainty. You provide tiny pieces of information and they are able to figure it out the rest. When I'm working with my mentee they struggle a lot of it. I prefer to provide the less possible information and let them fill the gaps. As they are still learning some basics they struggle a lot. They keep me asking \"simple\" questions. I try to teach them to solve the \"simple\" questions by themselves using google,github,stackoverflow And only come up to me after some struggle. Struggle help them to learn better and to improve their understanding of what they are learning."},{"id":"notes/habit#0.0","kind":"note","title":"Habit","heading":null,"tags":["habits","productivity"],"url":"/notes/habit","section":"Notes","date":"2026-10-24","text":"Habits is something that you do frequently (every day) Habits is the way to succeed in the long run Good habits will make your life better Bad habits will kill you Links Long Term"},{"id":"mentorship/hard-skill-worth#0.0","kind":"note","title":"hard skill worth","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/hard-skill-worth","section":"Mentorship","date":"2024-02-25","text":"hard skill worth \"What are the most valued technical skills currently in the technology market, especially in the development area?\" Everything that you can do by your own Lead a team Lead a product Being able to go from a user/stakeholder requirements to a real product. From archicture, RFC, POC, to backend, frontend, deploy in production and monitoring. Making sure the feature/product is a success. Design system that scales both on backend, frontend, fullstack, devops. Reduce cost of development Be able to optimize backend, frontend, fullstack, devops Be able to instrument/monitoring production product. Be able to debug bugs faster. Be able to communicate well with everybody, other teams, other developers, non-tech people Be able to use automated tests Be able to deploy to production without bugs and zero downtime Be able to explain complex things in a simple way Be able to control complexity Be able to reduce scope"},{"id":"notes/henry-ford#0.0","kind":"note","title":"Henry Ford","heading":null,"tags":["productivity","history"],"url":"/notes/henry-ford","section":"Notes","date":"2026-10-24","text":"“What difference does it make to let the cars move from worker to worker instead of letting the workers walk from car to car?” Excerpt From: Sönke Ahrens. “How to Take Smart Notes: One Simple Technique to Boost Writing, Learning and Thinking for Students, Academics and Nonfiction Book Writers.” Apple Books. He changed the production way, making each employee more specialized and better in his/her tasks How to Take Smart Notes"},{"id":"notes/hot-cold-media#0.0","kind":"note","title":"Hot Cold Media","heading":null,"tags":["media","communication"],"url":"/notes/hot-cold-media","section":"Notes","date":"2026-10-24","text":"text is cold, low resolution, more uncertainty, it needs more context video/audio is hot, high resolution, less uncertainty, more rich, it needs less context realtime is even hotter"},{"id":"notes/how-to-be-successful#1.0","kind":"note","title":"How to be Successful","heading":"Compound yourself","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Compound yourself Choose a carrer that has compound effects Focus on long term"},{"id":"notes/how-to-be-successful#2.0","kind":"note","title":"How to be Successful","heading":"Self belief","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Self belief Belief in yourself too much"},{"id":"notes/how-to-be-successful#3.0","kind":"note","title":"How to be Successful","heading":"Learn to think independently","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Learn to think independently What to do in situation that have no solutions Relay is better even though most people choose apollo."},{"id":"notes/how-to-be-successful#4.0","kind":"note","title":"How to be Successful","heading":"Get good at sales","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Get good at sales You need to convince people about your ideas"},{"id":"notes/how-to-be-successful#5.0","kind":"note","title":"How to be Successful","heading":"Make it easy to take risks","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Make it easy to take risks You just need to the right once It is easier to take long risk early in career as you not have much too lose but has a lot to gain. Avoid being comfortable in your job"},{"id":"notes/how-to-be-successful#6.0","kind":"note","title":"How to be Successful","heading":"Focus","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Focus Right in the right thing, instead of many hours."},{"id":"notes/how-to-be-successful#7.0","kind":"note","title":"How to be Successful","heading":"Work hard","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Work hard You need both smart and hard work Extreme people get extreme results Don't be used to the median Focus on being number in your field"},{"id":"notes/how-to-be-successful#8.0","kind":"note","title":"How to be Successful","heading":"Be Bold","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Be Bold Choose hard problems, and ambitious ones."},{"id":"notes/how-to-be-successful#9.0","kind":"note","title":"How to be Successful","heading":"Be Willful","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Be Willful You can bend the world for your will."},{"id":"notes/how-to-be-successful#10.0","kind":"note","title":"How to be Successful","heading":"Be hard to compete with","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Be hard to compete with Build a strong personal brand (sibelius at react community, relay, twitter, slack) Join multiple different fields Be original"},{"id":"notes/how-to-be-successful#11.0","kind":"note","title":"How to be Successful","heading":"Build a network","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Build a network Help people as much as you can Your network of talented people is the limit of what you are trying to build Build a reputation to build a network push people hard enough so they can grow, but not as hard so they will burn discover undiscovered talent is this person a force of nature? Bet on people"},{"id":"notes/how-to-be-successful#12.0","kind":"note","title":"How to be Successful","heading":"You get rich by owing things","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"You get rich by owing things You don't get rich with high salaries you get rich with things that grow fast in value time only scales linearly"},{"id":"notes/how-to-be-successful#13.0","kind":"note","title":"How to be Successful","heading":"Be internally driven","tags":["career","success"],"url":"/notes/how-to-be-successful","section":"Notes","date":"2026-10-24","text":"Be internally driven Do things to impress yourself Codemod impressed myself Workshop impressed myself I need to start doing videos and audio to let me from comfort zone Links Long Term References"},{"id":"mentorship/how-to-contribute-to-open-source#0.0","kind":"note","title":"how to contribute to open source","heading":"how to contribute to open source?","tags":["advice","mentorship","questions","async"],"url":"/mentorship/how-to-contribute-to-open-source","section":"Mentorship","date":"2024-02-25","text":"how to contribute to open source? \"Are there specific projects or types of open source contributions that you would recommend to someone in my current career (internship)?\" You can contribute to any open source project. If you say you can't, it is a barrier that you created. I would recommend contribute and be comfortable with open source. First, watch the repo that you want to contribute. Start contributing answers all open issues. Also do code review of all open pull requests. Read all the code and documentation to see if you can contribute with some easy stuff first. As you go, you can contribute. You only be able to contribute meaninfully for packages/libraries/projects that you use. If you don't use a project you can't contribute, because you don't know what is good or bad, or what is missing. You need to use the project and feel the pain. After that it will be easy to see what is missing, and you can have some idea of how to contribute."},{"id":"notes/how-to-deal-with-customers-in-a-sh#0.0","kind":"note","title":"How to deal with customers in a SH","heading":null,"tags":["software-house","customers"],"url":"/notes/how-to-deal-with-customers-in-a-sh","section":"Notes","date":"2026-10-24","text":"A software house build customized software for other companies. Most software house do everything that a customer ask them for, this sounds like the only way to do business as you are paying for that. What if I told you that you don't need to do everything your customer ask your for? The idea is that if you accept every single feature or request from your customer you will make things hard and harder for you in the long term. Customer usually don't know what they really want, when you receive a new feature request for them. Ask to yourself what is the real problem that he/she is trying to solve? Can we solve in a simpler way? Can we avoid this?"},{"id":"notes/how-to-find-stuff#0.0","kind":"note","title":"How to find stuff?","heading":null,"tags":["zettelkasten","search"],"url":"/notes/how-to-find-stuff","section":"Notes","date":"2026-10-24","text":"If you keep forgetting about where you saw something, you need to improve your index to make this easy I always forget how to find the author of zines, then I linked her twitter account inside a Zettel of my Zettelkasten, and then I can easily find her typing zine I've also have some favorite zines that was hard to find, so I started linking them in related zettles to make them easier to find. if you have something that is hard to find, it needs more connection in your web of knowledge to make retrieval process faster. Make them searchable in different ways: tags, key words, questions, answers. Tweak your search machine. Links Search Index"},{"id":"notes/how-to-find-the-best-solution#0.0","kind":"note","title":"How to find the best solution?","heading":null,"tags":["problem-solving","software"],"url":"/notes/how-to-find-the-best-solution","section":"Notes","date":"2026-10-24","text":"Your first solution for a problem won’t be the best one. The first thing you need to do when trying to solve a problem is to research for existing solutions for the given problem. Most of the time someone else already solved your problem or a similar one. After having a list of possible solutions you should evaluate them using some criteria. A problem always has more than one solution. Finding the best solution is an optimization problem where you use some criteria to evaluate the score of your solution. You can have some requirements that you should meet eliminating a few possible solutions. After finding the minimal set of possible solutions you need to try all of them in small proof of concepts to understanding their tradeoffs in practice. The simplest solution should be preferred. If you want to use this solution in a production system with a team, you have some more steps to follow. You need to ensure you can deliver this solution incrementally without breaking anything. You also need to write a RFC and demo your solution to your team, to make sure everybody is onboard. Other people can find problems in your proposed solution and edge cases that you have not thought about it, making you need to reevaluate your approach. Summary Finding the best solution for a given problem takes sometime as you need to evaluate many options before deciding. Picking the first one or the"},{"id":"notes/how-to-find-the-best-solution#0.1","kind":"note","title":"How to find the best solution?","heading":null,"tags":["problem-solving","software"],"url":"/notes/how-to-find-the-best-solution","section":"Notes","date":"2026-10-24","text":"“best practice” or most used solution could not be the best solution for your problem and requirements. Team members can invalidate your proposed solution and help you reach a better solution. Adding a solution for a production running system can be more challenge and require tweaks Feedbacks Quasar Your first solution for a problem [probably won’t be the best one, it happens, rarely but happens You can also use a provisional solution depending on your context/time/urgency as long as there is the possibility of an incremental update Talk about different solutions in the same testing system and bold the importance of a good test set actual good tests can cover actions regardless of your internal methods, if your solution is clear it will have a pattern that can be resolved by any change 1. Can you explain your solution clearly? 2. Can your solution be tested? 3. Will small changes in your solution break the tests? 4. Can you upgrade your solution? Pedro Carolis I think the sentences citing \"criteria\" are a little repetitive, mainly because they are very close in the text structure"},{"id":"notes/how-to-increase-quality#0.0","kind":"note","title":"How to increase Quality?","heading":null,"tags":["quality","engineering"],"url":"/notes/how-to-increase-quality","section":"Notes","date":"2026-10-24","text":"Raise the bar you should plan more you should do more code review you should test more you should get more context to provide the best solution you should really know what you are doing punctuality não seguir o design how to improve issues how to improve issue detail? how to replicate the bug? who is responsible for the issue detail? iterative"},{"id":"mentorship/how-to-maintain-consistency-in-studying#0.0","kind":"note","title":"how to maintain consistency in studying?","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/how-to-maintain-consistency-in-studying","section":"Mentorship","date":"2024-02-27","text":"how to maintain consistency in studying? study everyday focus on learn in demand try to solve problems instead of passive learning prefer active learning and sharing knowledge in public"},{"id":"mentorship/how-to-prioritize-learning#0.0","kind":"note","title":"how to prioritize learning","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/how-to-prioritize-learning","section":"Mentorship","date":"2024-02-25","text":"how to prioritize learning \"How can I identify and prioritize which technologies or programming languages to learn given long-term career goals?\" Learn what will help you achieve your goals first. If you want to get your first job, learn the tech stack that most companies are loooking for. If they are looking for Go, you learn Go. You learn Go and show that you can build using Go what they are needing. That you can build a CRUD API with Go, that you can implement event driven with Go. That you can create automation using Go. Study the company, the products, the problems they are facing. And how can you solve it using the tech stack that they use. You need to balance with topics that you need right now. For instance, we need to improve a lot our DevOps workflow, so I spend a lot of time studying and testing a lot of DevOps workflows. I also studied things that I won't use on DevOps right now, but can be useful in the future."},{"id":"notes/how-to-reduce-decisions#0.0","kind":"note","title":"How to reduce decisions?","heading":null,"tags":["productivity","decisions"],"url":"/notes/how-to-reduce-decisions","section":"Notes","date":"2026-10-24","text":"Decisions slow you down How to reduce the number of decisions that you need to take?"},{"id":"mentorship/how-to-stand-out#0.0","kind":"note","title":"how to stand out","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/how-to-stand-out","section":"Mentorship","date":"2024-02-25","text":"how to stand out \"How do I stand out in an already structured company?\" \"How do I stand out in a team?\" Who current stand out? Why they stand out? The ones that deliver code and product with quality stands out. The ones that you can trust stands out. The ones that lead the team/product/team stands out The ones that needs few supervision stands out The ones that makes few mistakes stands out The ones with more responsibilities stands out The ones that can solve bugs faster and production incidentes faster stands out The ones that make things cheaper, faster stands out The ones that work in the hardest and more complex projects stands out The ones that create new things stands out The ones that make the company make more money, bring more customers stands out"},{"id":"notes/how-to-take-smart-notes#0.0","kind":"note","title":"How to Take Smart Notes","heading":null,"tags":["zettelkasten","writing","books"],"url":"/notes/how-to-take-smart-notes","section":"Notes","date":"2026-10-24","text":"Successful writing comes from good note taking “Getting something that is already written into another written piece is incomparably easier than assembling everything in your mind and then trying to retrieve it from there.” You need the Habit of note taking to write well “Having a meaningful and well-defined task beats willpower every time.” “Routines require simple, repeatable tasks that can become automatic and fit together seamlessly” the new routine will feel artificial at first, much like an habit change This method is similar to Getting Things Done 1. fleeting notes: capture everything that come up in your mind 2. literature notes: notes about something that you read 3. permanent notes: bring notes from 1/2 and add more metadata, links them, improve them. You invert the process of writing. You first read a lot of content that you are interested in. Then when you have many content about some ideas/concepts, you can organized the pieces and write about it you need serendipity to find new ideas In which context do you want to find this note? “Making something public always means to write it down so it can be read.” Go in public to gather feedback of your thoughts/ideas An expert acts on intuition because all the rules and knowledge are internalized. They don't need conscious to act properly. An expert can see patterns that begineers can't Things we understand are connected,"},{"id":"notes/how-to-take-smart-notes#0.1","kind":"note","title":"How to Take Smart Notes","heading":null,"tags":["zettelkasten","writing","books"],"url":"/notes/how-to-take-smart-notes","section":"Notes","date":"2026-10-24","text":"it is easier to remember interconnected things, like the slip-box Links Zettelkasten Habit"},{"id":"notes/how-to-teach-programming#0.0","kind":"note","title":"how to teach programming","heading":null,"tags":["programming","teaching"],"url":"/notes/how-to-teach-programming","section":"Notes","date":"2026-10-24","text":"a DSL for finance excel spreadsheets are code the best part of programming is finding mistakes"},{"id":"notes/human-computation#0.0","kind":"note","title":"Human Computation","heading":null,"tags":["computing","crowdsourcing"],"url":"/notes/human-computation","section":"Notes","date":"2026-10-24","text":"Human Computation is when you use Humans to perform tasks that humans are better can machine. It is like humans helping computers. Luis Von Ahn made a lot of programs and games to use human base computation to solve problems where machine is not so goof. Duolingo knows that the best translators are humans. It sends real text to advanced learners train that are piece of websites, they translated buzzfeed using this strategy. Google images first version was a game where 2 users without communicate needs to say what is inside an image. After discovering some things inside the image these words become taboo to find more objects and things. The second version of this game was used to segment images, given a word one user would show part of the image to the other player show tell what you as it. It also made ReCaptcha where users tell the numbers inside images to handle ocr/ digits recognization."},{"id":"notes/human-search-engine#0.0","kind":"note","title":"Human Search Engine","heading":null,"tags":["search","zettelkasten","writing"],"url":"/notes/human-search-engine","section":"Notes","date":"2026-10-24","text":"This is the preparation for Search Engine blogpost on Substack it will be built on top of Search Index and Zettelkasten ideas Outline What is search? Why we need search? Why bookmark, tags are not enough? How can we build our own search index How to incrementally tweak and improve your search index Practical index building After using Google for many years we think search is a synonymous of Google. Google is really good to help us find information, websites, places, content, news, products, flights and many more information. What is search? Search is how we find information. We use google in a daily basis to find websites, places, products, flights. To perform search we provide a text query usually a question, some keywords, and hope we find the information we needed. Mac Spotlight let us find \"anything\" in our desktop. It can find documents, applications and more. Some apps has a spotlight search approach, in notion you can find pages and more. Webstorm let you search for filenames, variables, functions, classes, components and more. Why we need search? Our minds are powerful but limited, we can't retrieve most of information from our minds. How can we build our own search index? Have you ever forget about something: a book, a movie, a link, a github repo? This happen for a number of reasons We haven't written down about the book We haven't add some metadata or text to help us"},{"id":"notes/human-search-engine#0.1","kind":"note","title":"Human Search Engine","heading":null,"tags":["search","zettelkasten","writing"],"url":"/notes/human-search-engine","section":"Notes","date":"2026-10-24","text":"find this books later one We haven't linked this book to other books we had read Why bookmarks does not work? If you keep a list of bookmarks in your browser you can't add metadata to them You can't easily search them, you need to open them to figure it out what it was about You can't link one link to another. Why folders does not work? Categories and subcategories will overlap somewhere, and you're gonna have the paradox of where to put the things you wanna remember. How to incrementally build and improve index? Every time you hit a miss (try to find something but it won't get it easy). Add a new note (zettel) to your note taking (zetteltask). I'm using notion for my note taking. Add the link/idea/book/website/movie/podcast in the note Add text that would make you find it later in an easy way. What were the keywords that you used to find it this time? Add labels/tags to add them to some categories Link this note to other related notes, so you can find it following a web of connections. Let's see how I index some common things Book When reading a book, I create a new entry for it. A write down with my own words core ideas of the book. I create 1 new entry for each core idea, so I can link them to other books and sources. I quote some passages of it (very few ones) A link the book to other related books and sources. Person I write down a short description to identify the person"},{"id":"notes/human-search-engine#0.2","kind":"note","title":"Human Search Engine","heading":null,"tags":["search","zettelkasten","writing"],"url":"/notes/human-search-engine","section":"Notes","date":"2026-10-24","text":"I can have a small picture to make remembering easier I write down some ideas that person has The job of this person contact information link this person to books, and other people Make your search Future Proof always testing them Find everything just typing. We can use Human Computation to improve our search engine You need to provide the right cues to remember An index is A systematically way to provide cues You usually search by prefix postfix You usualy search by keywords You usualy search by related notes/ideas You usually search by synonymous how do index videos/podcasts? When watching a video/podcast I write down some draft/raw notes based on concepts of it. Then when the video/podcast is over, I reread then and compile them with only the essential parts. Feedback A única parte que precisei reler mais foi \"A note will be the building block for our index.\" porque não foi tão claro o conceito de building blocks pra mim. Não ficaria melhor colocar \"A note will be the documento for our index\"? Porque na figura acima você usou \"Documents\" na segunda coluna"},{"id":"mentorship/career-growth-without-experience#0.0","kind":"note","title":"i really want to grow in my career but have no experience, what should I do?","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/career-growth-without-experience","section":"Mentorship","date":"2024-02-27","text":"i really want to grow in my career but have no experience, what should I do? practive more apply more fake until you make it work for free"},{"id":"notes/ide#0.0","kind":"note","title":"IDE","heading":null,"tags":["productivity","development"],"url":"/notes/ide","section":"Notes","date":"2026-10-24","text":"IDE is at the top of productive for developers If you wanna be productive as a developer you need to master your IDE Make sure your IDE provide good and fast code completion Also make sure your IDE make all your workflows fast Links Productivity"},{"id":"ideas#0.0","kind":"note","title":"Ideas","heading":null,"tags":["ideas"],"url":"/ideas","section":"Essays","date":"2022-11-25","text":"Grab any of these ideas and buidl gumroad pix patreon pix openai/stable diffusion to generate memes a meme generator language nocode using storybook components slack/discord CI/CD bot"},{"id":"notes/image-thumbnail#0.0","kind":"note","title":"Image Thumbnail","heading":null,"tags":["frontend","performance"],"url":"/notes/image-thumbnail","section":"Notes","date":"2026-10-24","text":"We need to resize images to different formats and devices to provide the best user experience Right now we use thumbor docker from Globo, that uses python to provide their tool. I think moving to lambda would be cheaper, and maybe faster."},{"id":"notes/importing-data-using-csv-xlsx#0.0","kind":"note","title":"Importing data using csv / xlsx","heading":null,"tags":["software","data"],"url":"/notes/importing-data-using-csv-xlsx","section":"Notes","date":"2026-10-24","text":"What can go wrong when importing data using .csv or .xlsx files? Dates/Times csv/xlsx files does not ensure the user will use the data formatting that you asked them for. You can use the date format in xlsx, but user can modify the column to remove this formatting, or pasting the wrong date format altogether. You can also handle dates as string or let your xlsx parser to try to parse to you. The most common problem is that some countries using dd/mm/yyyy and other uses mm/dd/yyyy. You can use some Heuristic to try to correct parse them, as some dates only works in a given format. You could also use the date format of the locale of the user, but it won't tell much about the language of the file the user used to edit the import data. You also need to handle timezone possible issues as always. Header/Columns Users can modify the header of your import file, so your importing strategy will fail. You could enforce the column number, but users will change this order You could enforce the column header label, but users will change them You could try to match them using a Heuristic that this will also fail You can let user tells you what is inside each column Booleans You can predefined a set of strings to represent truth and false values It can be in english and also in the language of your users. You should also lowercase them to make comparison more stable, as users can behave and"},{"id":"notes/importing-data-using-csv-xlsx#0.1","kind":"note","title":"Importing data using csv / xlsx","heading":null,"tags":["software","data"],"url":"/notes/importing-data-using-csv-xlsx","section":"Notes","date":"2026-10-24","text":"act differently. Conditional Fields One column/field can affect other field. One field can make another field required One field can be exclusive against other (you can't have both) Validations Each column can have a data type (string, number, date, ID, boolean and more). Your validations can be global or local If you are importing users, you need a global validation to make sure they does not have conflicts primary keys. You need local validation per row, to make sure all required columns are defined. You also need to make sure all columns have the proper type. If you have an ID reference to some database data, you need to make sure the ID is valid, and it is stored in the database. Error Handling Instead of a stack trace, we need to provide a file trace of error that happened during the processing. We can have 3 types of errors: global, per row, or per column. Global: it happens when 2 or more rows conflicts Per row: it happens when all columns are valid individually but an error happen when they are used together. Per column: it happens when a given column is wrong, and break the processing of a given row. Space We can have space before and after data because user typed spaced without noticing. We should trim any data before processing it. Showing Results You need to show what rows were imported successfully. You also need to who which rows were not processed correctly and"},{"id":"notes/importing-data-using-csv-xlsx#0.2","kind":"note","title":"Importing data using csv / xlsx","heading":null,"tags":["software","data"],"url":"/notes/importing-data-using-csv-xlsx","section":"Notes","date":"2026-10-24","text":"why."},{"id":"notes/improve-english-writting#0.0","kind":"note","title":"Improve English Writting","heading":null,"tags":["writing","english"],"url":"/notes/improve-english-writting","section":"Notes","date":"2026-10-24","text":"seagul"},{"id":"mentorship/improve-technical-skills#0.0","kind":"note","title":"improve technical skills","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/improve-technical-skills","section":"Mentorship","date":"2024-02-26","text":"improve technical skills \"How can I improve my technical skill in specific technologies?\" The only way of improving in something is to do something You need 10k hours to start getting good at something. Try to solve classic problems in your field Try to reinvent the wheel of what you use to improve your mental model of how things works the more your get real practice experience the better you will get"},{"id":"notes/improvement#0.0","kind":"note","title":"Improvement","heading":null,"tags":["learning","habits"],"url":"/notes/improvement","section":"Notes","date":"2026-10-24","text":"Improvement is a battle that must be fought anew each day. Your next workout doesn't care how strong your last one was. Your next essay doesn't care how popular your last one was. Your next investment doesn't care how smart your last one was. Your best effort, again."},{"id":"notes/in-conclusion#0.0","kind":"note","title":"In Conclusion","heading":null,"tags":["writing"],"url":"/notes/in-conclusion","section":"Notes","date":"2026-10-24","text":"1. To Summarize Succinctly recap the main points discussed throughout the article. 2. In Summary Provide a brief and concise recap of the article's content. 3. To Conclude Offer a closing thought or statement summarizing the key ideas. 4. Wrapping Up Signal that the article is concluding and summarize the main takeaways. 5. Final Thoughts Share your final reflections, insights, or opinions on the topic. 6. Closing Remarks Add some concluding comments, impressions, or opinions. 7. To Wrap It Up Summarize the article's main points and bring the discussion to a close. 8. Last Words Offer some final insights or thoughts on the subject matter. 9. The Takeaway Highlight the central message or primary lessons for the reader. 10. In Closing Provide a concise summary and any last considerations. 11. To End Convey that the article is nearing its conclusion and offer a summary. 12. To Sum Up Recap the article's key points in a clear and concise manner. 13. In Summary of All This Summarize the article's main points and tie them together. 14. To Recap Offer a brief overview of the main discussion points. 15. To Close Signal the article's conclusion and summarize the essential content."},{"id":"notes/index-note#0.0","kind":"note","title":"Index","heading":null,"tags":["search","zettelkasten"],"url":"/notes/index-note","section":"Notes","date":"2026-10-24","text":"Indexing is the art of making retrieving data faster Elastic Search (lucene) uses an inverted index to retrieve all documents fast. An inverted index is like this: doc1 Awesome doc2: Alert doc3: Beta doc4: Crud doc4: Create A doc1, doc2 B doc3 C doc4, doc5 It search based on prefix/suffix to reduce the search time Zettelkasten is like an index for our brain, as we can find ideas/thoughts faster than using another method we can search using tags, full text search and links among notes Links Zettelkasten Human Search Engine"},{"id":"notes/indistractable#0.0","kind":"note","title":"Indistractable","heading":null,"tags":["productivity","focus"],"url":"/notes/indistractable","section":"Notes","date":"2026-10-24","text":"Distraction is an unhealthy escape from reality Spend time in what you value Optimize your input, your knowledge diet Make time for yourself, for what matters for yourself"},{"id":"notes/inflexion-point#0.0","kind":"note","title":"Inflexion point","heading":null,"tags":["career","life"],"url":"/notes/inflexion-point","section":"Notes","date":"2026-10-24","text":"first computer at home first internet access get into on technical course of programming and development system get into OBMEP get into USP doing study abroad in US (science without borders) summer startup job inside an accelerator founding Entria first open source contributions creating my first meetup and community react-sp react brasil"},{"id":"notes/information#0.0","kind":"note","title":"Information","heading":null,"tags":["information","media"],"url":"/notes/information","section":"Notes","date":"2026-10-24","text":"Claude Shannon defines entropy and information concept Marshall McLuhan Cool media: less information, low resolution, users need to fill the gap you need to have a previous knowledge to understand a Tweet) Hot media: video/podcast more information, little uncertainties. If you are a beginner you need to use hot media’s to grasp the first concepts Human Search Engine How to Take Smart Notes Notes should be low resolution"},{"id":"notes/instant-payment#0.0","kind":"note","title":"Instant Payment","heading":null,"tags":["payments","fintech"],"url":"/notes/instant-payment","section":"Notes","date":"2026-10-24","text":"Instance Payment is to send/receive money 24/7/365 within seconds (10 seconds) there are some hard limit of how much money you can transfer (15k eur on europe, 25k US, 1500 reais) RTP real-time payments processed payments are irrevocable (you need to another payment transaction) request for payment flow cross board payments SWIFT 5 minutes 95% within a day instant payment reduces costs pix US 2023, 2024"},{"id":"notes/intern-to-cto#0.0","kind":"note","title":"Intern  to CTO","heading":null,"tags":["career","leadership","talks"],"url":"/notes/intern-to-cto","section":"Notes","date":"2026-10-24","text":"How to go from a junior developer to CTO, C-Level go from individual contributor to leader/manager go from code to architecture/business go from operational work to strategic work feedbacks akiin how did we decide to migrate to woovi? looking for the new oxygen thenicolau couldn't the right hand be something like a COO? right hand similar to COO jgcmarins add GA to presentations merision Slide 4 integrate culture Slide 5 propagate culture leonardo furtado staff engineer they are there are why only text? pedro post this for free you are connected to top-tier software people? bruno Só adicionaria uma coisa... Acho que pra junior/estag algum nivel de incerteza é necessário pra que ele se desenvolva, só que tem um limite... thayto first impression: doesn’t work properly on mobile where is the mid level? faltou datas kindJotario faltou datas 1. pq tu fala primeiro sobre a parte tecnica e depois sobre vc nao é o padrao ser o contrario? samuel ambiguo tech lead vs manager tgmarinho vc geralmente diz que vc tem q trabalhar com pessoas q sabem mais que vc para aprender mais, sendo o CTO como que vc aprende mais sobre ser CTO se vc não tem outros CTOs na empresa. alguns produtos não precisam tanto ser dev especialista, em termos de frontend, ainda mais se for telas mais simples de CRUD, quando que vale a pena ser especilista em vez de generalista? No roadmap da sua carreira parece que"},{"id":"notes/intern-to-cto#0.1","kind":"note","title":"Intern  to CTO","heading":null,"tags":["career","leadership","talks"],"url":"/notes/intern-to-cto","section":"Notes","date":"2026-10-24","text":"generalista foi melhor pq vc codou, liderou, definiu arquitetura, lidou com cliente e agora gerencia em alto nível as tecnologias. quais conhecimentos foram mais relevantes para chegar onde chegou e quais foram seus maiores acertos e erros em cada path intern to CTO. kuringa proatividade é o que gira a chave 8553 contacts Paulo otavio Adicionaria um slide com por prioridade. from intern to CTO Soft Skill Core comunicação explicar problemas complexos de forma que o povo entenda ou explicar o problema da forma correta) Mta vezes o telefone sem fio quebra a mensagem principal. Liderença Quero ser esse cara um dia. Muitos caras com quem trabalhei proximo tinha esse digamos charme de inspirar vc a ser melhor seja pq eram agressivos com entregas e resultados ou pq realmente dominvam o assunto mas o mais importante NÃO TINHAM MEDO de remar para aguas desconhecidas e isso inspira mto as pessoas que estão na zona de conforto a sair delas pelo exemplo. OPEN Principles Ja trabalhei com mto dev senior fechado para evoluir e acho que por isso não atingiram potenciais maiores, mas nunca trabalhei com um CTO que não fosse aberto a sugestoes e opinioes. Seria algo como mate seu ego todo dia para aprender um pouco mais hoje."},{"id":"notes/investing#0.0","kind":"note","title":"Investing","heading":null,"tags":["investing","economics"],"url":"/notes/investing","section":"Notes","date":"2026-10-24","text":"Martin Shkreli buy bonds and stocks as assets to grow in value ads on a website, mobile app, or YouTube channel, courses, ebooks, teach what you know to others, affiliated marketing, amazon"},{"id":"notes/investing-pyramid#0.0","kind":"note","title":"Investing Pyramid","heading":null,"tags":["investing","startups"],"url":"/notes/investing-pyramid","section":"Notes","date":"2026-10-24","text":"You first need VC to have angels to have incubators mature less risky company are invested first you need to know that your investiment company will be able to get more money before running out of money"},{"id":"mentorship/is-it-bad-to-copy-and-paste-code#0.0","kind":"note","title":"is it bad to copy and paste code?","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/is-it-bad-to-copy-and-paste-code","section":"Mentorship","date":"2024-02-27","text":"is it bad to copy and paste code? copy and paste is the best way to develop software you copy a working code, the code will keep working you should also learn what each line of the code you are copying is doing"},{"id":"notes/issue#0.0","kind":"note","title":"Issue","heading":null,"tags":["project-management","development"],"url":"/notes/issue","section":"Notes","date":"2026-10-24","text":"Issue is an Atom task. It represent a chunk of work to produce something It can represent a new feature that needs to be implemented It can represent a bug that needs to be solved It can represent an improvement It can represent a technical debt that needs to be solved You can add labels to issues (metadata) to making them easier to find, and also group them You can also link other issues, pull requests, commits to add more context to the issue. You can attach an issue to a temporal context using a milestone A milestone represent a list of issues that should be worked in a given space of time"},{"id":"mentorship/junior-vs-senior#0.0","kind":"note","title":"junior vs senior","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/junior-vs-senior","section":"Mentorship","date":"2024-02-25","text":"junior vs senior \"Pra você o que diferencia um pleno de um senior?\" Depth and Breath of knowledge Depth and Breath of Experience Emotional maturity They won't lose themselves in big tasks They can handle uncertainity They can design, archicture systems that scale with few technical debt. They understand tradeoffs They can structure process, automation, and systems to make everybody more productive They know more about the whole codebase, product, holistic view They deliver better quality code, with fewer bugs and problems."},{"id":"mentorship/keep-up-to-date#0.0","kind":"note","title":"keep up to date","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/keep-up-to-date","section":"Mentorship","date":"2024-02-25","text":"keep up to date \"How can I stay up to date with trends and changes in technology given the rapid development of the field?\" You can't You need to prioritize You can reduce your learning curve, adding more nodes and edges to your knowledge graph If you think about it, the \"new things\" are just the existing building blocks recombined. So you need to focus on learn these building blocks and learning a new thing it will be easy You could also be the one creating the new thing."},{"id":"notes/keyboard#0.0","kind":"note","title":"Keyboard","heading":null,"tags":["productivity","tools"],"url":"/notes/keyboard","section":"Notes","date":"2026-10-24","text":"We can be much more Productivity when using Keyboard then mouse Mouse needs to traverse the whole screen to find and click in something we have an Omnibox/Spotlight to easily find actions and things inside applications you can do any action from the tip of your keyboard Open the omnibox and Search for any action it is like a genie lamp with infinite options, you can have any wish in the tip of your fingers To make this possible we need good Index to make sure we easily find what we want we can improve our search using context (current state and also past states), and recent actions/pages/code Tips and Tricks"},{"id":"notes/keynes#0.0","kind":"note","title":"Keynes","heading":null,"tags":["economics"],"url":"/notes/keynes","section":"Notes","date":"2026-10-24","text":"Economics For Keynes, economics mattered because it would ensure people need not organize their lives around the empty chase of money. It would free them, instead, “to live wisely, agreeably and well.”"},{"id":"mentorship/knowledge-value#0.0","kind":"note","title":"knowledge value","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/knowledge-value","section":"Mentorship","date":"2024-02-26","text":"knowledge value \"How I can calculate values of my knowlege? Example: My cost about work far away from home is R$2.866,80/month. But I learning a lot that put in balance is worth. Exists a away to calculate this?\" Knowledge does not have an intrisic value. The value of knowledge is related to their scarcity and demand. If you know something that a lot of people and companies need, and a few people know it, you can charge a lot for it. If you think you are not earning as much as you should, you should try to ask for a raise, or switch jobs. Let the market decide how much your knowledge is worth. The more worth the easier is to get a raise or switch jobs."},{"id":"notes/layers#0.0","kind":"note","title":"Layers","heading":null,"tags":["computer-science","learning"],"url":"/notes/layers","section":"Notes","date":"2026-10-24","text":"After Tobi talking about there is not such thing as frontend engineer and that you need to know more layers I'd like to talk about all the layers that I've learning in college Some people think that college is a waste of money and time for computer science. I think if you can afford it, you should do it. It will give you all the base that you gonna need to solve any kind of problem that come up to you. I think we can go from electrons to no-code to cover all layers and abstractions that you need to know, not master, to understand what it is really going on. The basic building blocks of a CPU is the transistor. A transistor let electric current pass given a following configuration. So we have 0 and 1, binary. 0 is no current and 1 is current. And everything is built on top of this concept. Then we have boolean logic, that let us sum, subtract and to most math using binary code. We use logic ports to create basic arithmetic. If you add PC (program counter), a clock, you have a basic CPU. If you can load data from memory and write to memory, you can do anything your modern computer does. You can build your own assembly, then you decode each instructions and execute simple programs. After that you could keep using assembly, or build a higher level language to compile to assembly to make your life easier, like C."},{"id":"mentorship/leadership-migration#0.0","kind":"note","title":"leadership migration","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/leadership-migration","section":"Mentorship","date":"2024-02-25","text":"leadership migration \"What strategies do you recommend for effectively transitioning into technology leadership roles?\" The most effective strategy is to start leading right now in your current role. YOu also need to be in an organization that needs more leadership You should be leading your team, your product, your feature before even being assigned to this role. Performing the activities of the leader before being a leader is the best way to be promoted to it. You also need to study a lot about leadership, not only in tech but the social part. Read a lot of content about it. Deliver results with high quality will give you trust to be promoted to a leader Also make it clear that you want to be a leader"},{"id":"notes/leaking-abstraction-framework#0.0","kind":"note","title":"Leaking Abstraction Framework","heading":null,"tags":["frontend","abstractions"],"url":"/notes/leaking-abstraction-framework","section":"Notes","date":"2026-10-24","text":"nextjs gatsby expo apollo can I use &lt;leak framework &lt;thing outside &lt;leak framewok can I use expo video outside expo? can I use next &lt; outside next? can I use gatsby image outside gatsby? can I use apollo cache outside apollo server? Some framework make very Opinionated solutions and make it harder to use their solutions outside their ecosystem Abstractions"},{"id":"notes/learn-in-public#0.0","kind":"note","title":"Learn in Public","heading":null,"tags":["learning","writing"],"url":"/notes/learn-in-public","section":"Notes","date":"2026-10-24","text":"Learn in Public was explicit written by swyx. It is about to learn and share your journey in public, share what worked and what don't It can be used to fail fast and learn from your mistakes. It can be used to validate your ideas It helps to create a footprint of yourself Links Community Share Advice to Developers References"},{"id":"notes/learning-a-new-language#0.0","kind":"note","title":"Learning a new language","heading":null,"tags":["learning","language"],"url":"/notes/learning-a-new-language","section":"Notes","date":"2026-10-24","text":"When I'm learning a new language I try to immerse myself with the language. I've change my computer, mobile phone, browser and everything to the related language. I'm using duolingo to learn spanish, I'm not spending many time per day learning spanish, but I'm learning some everyday. I think consistency is better in the long run. Learning a new language needs time, as learning everything else I always try to think in the new language, and if I don't know how to say something in it, I use google translate to help me out. I also to some dumb stuff as mixing my talk and writing with the new language, so you gonna see me trying to use the new language in my life with my wife and kid when thought they don't understand much about it. Spanish is \"harder\" because it is to close to Portuguese, so most people think they don't need to learn it, but it has a lot of nuances. Languages has also a lot of details that you learn as you use more and more. We have false cognates that are words that you write in a similar way but means something completely different, so you need to unlearn and let your brain relearn again Links Make it stick"},{"id":"notes/learning-approaches#0.0","kind":"note","title":"Learning Approaches","heading":null,"tags":["learning"],"url":"/notes/learning-approaches","section":"Notes","date":"2026-10-24","text":"Learning in depth (learn a lot about one thing) Learning in breadth (learn a lot about many things) Learn why before how learn one thing at a time you gonna fail to code a new thing in a different programming language learn is about time frequency how much time are you investing on this? learn is about playing with it, active learning"},{"id":"notes/learning-by-practice#0.0","kind":"note","title":"Learning by Practice","heading":null,"tags":["learning"],"url":"/notes/learning-by-practice","section":"Notes","date":"2026-10-24","text":"You can't teach everything just saying things to people riding a bicycle is one of the things you can't really teach, you can give advice of how to get stable but your body should feel and adjust."},{"id":"mentorship/learning-depth-or-breadth#0.0","kind":"note","title":"learning depth or breadth","heading":"learning depth or breadth ?","tags":["advice","mentorship","questions","async"],"url":"/mentorship/learning-depth-or-breadth","section":"Mentorship","date":"2026-06-07","text":"learning depth or breadth \"How can I effectively balance the desire to learn new technologies with the need to deepen my knowledge of the ones I am already studying?\" My advice here is to focus more on solving problems. And solving a new problem usually is a combination of solving some existing problem that you already solved, some problems that you don't know how to solve, and some knowledge and experience that you have and some that you are missing. Most of the time you should focus on breadth if you want to solve more kind of problems. You focus in learning few about a lot of things. If you want to solve better a kind of problem you need to go in depth. You focus in learning a lot about a few things. You need to balance these approaches. I usually only go deep when my current knowldge/experience is not enough to solve the problem that I have to solve."},{"id":"learning-path/learning-path-aws-lambda#0.0","kind":"note","title":"Learning Path AWS Lambda","heading":null,"tags":["learning-path","aws","lambda","backend"],"url":"/learning-path/learning-path-aws-lambda","section":"Learning Path","date":"2022-11-26","text":"learn how to bundle backend using webpack in a single bundle (check this learn how to automate lamdba deploys using serveless or aws cdk (github actions) learn how to configure and automate api gateway learn how to automate tests lambdas using jest learn how to configure, automate and use RDS Proxy to fast database workflow in lamdbas (also cache database connections) how the performance gain using RDS Proxy over normal database usage learn about cold start and lambda statefull expose a CRUD api in lamdba put everything on open source (github) write a blog post about each of the topics above deploy in your AWS account"},{"id":"learning-path/learning-path-backend#0.0","kind":"note","title":"Learning Path Backend","heading":null,"tags":["learning-path","back-end"],"url":"/learning-path/learning-path-backend","section":"Learning Path","date":"2024-02-27","text":"learn about basic database modelling, use excalidraw learn about database concepts. Read Database Internals learn to answer these questions learn how to connect to a database and performe queries learn how to expose a CRUD API REST and/or GraphQL learn how to document the API using Swagger, swagger-jsdoc is the best for it learn how to test your API using Postman, and also automated using jest and supertest learn how to consume other APIs using fetch"},{"id":"learning-path/learning-path-devops#0.0","kind":"note","title":"Learning Path DevOps","heading":null,"tags":["learning-path","devops"],"url":"/learning-path/learning-path-devops","section":"Learning Path","date":"2024-02-27","text":"learn about docker learn about kubernetes practice with minikube learn about CI/CD practice with github actions practice with sadservers practice with labs.iximiuz practice with Killercoda"},{"id":"learning-path/learning-path-docker#0.0","kind":"note","title":"Learning Path Docker","heading":null,"tags":["learning-path","docker","backend"],"url":"/learning-path/learning-path-docker","section":"Learning Path","date":"2022-11-26","text":"learn why we need docker learn how to define a Dockerfile learn how to build a docker learn how to list images learn how to run docker with port forward learn how to go inside docker to debug, running /bin/bash learn docker compose learn how to send a docker image to a reqistry (dockerhub or aws ecr) learn how to deploy a docker to kubernetes, aws ecs or another platform learn how to use docker volumes learn how to use docker network"},{"id":"learning-path/learning-path-java#0.0","kind":"note","title":"Learning Path Java","heading":"Java Core","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Java Core Data types Loops and conditions Methods and functions"},{"id":"learning-path/learning-path-java#1.0","kind":"note","title":"Learning Path Java","heading":"Build a Java CLI","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Build a Java CLI Command line interface basics Parsing command line arguments"},{"id":"learning-path/learning-path-java#2.0","kind":"note","title":"Learning Path Java","heading":"Make a CRUD with Java","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Make a CRUD with Java Connect with a database Creating, reading, updating and deleting data from a database Mapping database tables to Java objects with ORMs, use Hibernate or Spring Data"},{"id":"learning-path/learning-path-java#3.0","kind":"note","title":"Learning Path Java","heading":"Build a Java package","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Build a Java package Organizing code into packages Creating and using your own custom packages"},{"id":"learning-path/learning-path-java#4.0","kind":"note","title":"Learning Path Java","heading":"How to consume Java package","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"How to consume Java package Introduction to Maven and Gradle Using external libraries"},{"id":"learning-path/learning-path-java#5.0","kind":"note","title":"Learning Path Java","heading":"How to set up and update packages","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"How to set up and update packages Upgrading and downgrading dependencies Dealing with conflicts and versioning issues"},{"id":"learning-path/learning-path-java#6.0","kind":"note","title":"Learning Path Java","heading":"How to deploy Java","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"How to deploy Java Introduction to web servers and servlet containers Packaging a Java application for deployment Deploying a Java application to a web server or a cloud provider"},{"id":"learning-path/learning-path-java#7.0","kind":"note","title":"Learning Path Java","heading":"How to consume requests using Java","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"How to consume requests using Java Making HTTP requests Handling exceptions and errors"},{"id":"learning-path/learning-path-java#8.0","kind":"note","title":"Learning Path Java","heading":"How to use databases in Java","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"How to use databases in Java Connecting to databases using JDBC or JPA Using ORMs like Hibernate or Spring Data to simplify database interactions"},{"id":"learning-path/learning-path-java#9.0","kind":"note","title":"Learning Path Java","heading":"How to deal with files in Java","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"How to deal with files in Java Reading and writing files Creating, deleting and renaming files and directories"},{"id":"learning-path/learning-path-java#10.0","kind":"note","title":"Learning Path Java","heading":"How to do async in Java","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"How to do async in Java Introduction to concurrency and parallelism in Java Working with asynchronous I/O"},{"id":"learning-path/learning-path-java#11.0","kind":"note","title":"Learning Path Java","heading":"Websockets in Java","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Websockets in Java Introduction to WebSockets and real-time communication Handling WebSocket events and messages"},{"id":"learning-path/learning-path-java#12.0","kind":"note","title":"Learning Path Java","heading":"Threads","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Threads Introduction to concurrency in Java Creating and managing threads Synchronization and locks Dealing with thread safety issues"},{"id":"learning-path/learning-path-java#13.0","kind":"note","title":"Learning Path Java","heading":"Java Concurrency","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Java Concurrency Advanced concurrency concepts like Executors, Futures and Promises Concurrent collections and data structures"},{"id":"learning-path/learning-path-java#14.0","kind":"note","title":"Learning Path Java","heading":"Techniques to improve performance","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Techniques to improve performance Using caching and in-memory databases Designing for scalability and performance"},{"id":"learning-path/learning-path-java#15.0","kind":"note","title":"Learning Path Java","heading":"JSON in Java","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"JSON in Java Introduction to JSON format and parsing Serializing Java objects to JSON and vice versa"},{"id":"learning-path/learning-path-java#16.0","kind":"note","title":"Learning Path Java","heading":"Java applets","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Java applets Overview of Java applets and their uses Building, deploying and running Java applets"},{"id":"learning-path/learning-path-java#17.0","kind":"note","title":"Learning Path Java","heading":"Security","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Security Introduction to security concerns in Java Best practices for authentication and authorization Secure coding practices to prevent common vulnerabilities"},{"id":"learning-path/learning-path-java#18.0","kind":"note","title":"Learning Path Java","heading":"Java in Docker","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Java in Docker Introduction to Docker containers and their advantages Building and deploying Java applications in Docker containers"},{"id":"learning-path/learning-path-java#19.0","kind":"note","title":"Learning Path Java","heading":"Java serverless","tags":["learning-path","java","backend"],"url":"/learning-path/learning-path-java","section":"Learning Path","date":"2023-04-12","text":"Java serverless Introduction to serverless computing and its benefits Building and deploying Java applications on serverless platforms"},{"id":"learning-path/learning-path-react#0.0","kind":"note","title":"Learning Path React","heading":null,"tags":["learning-path","react"],"url":"/learning-path/learning-path-react","section":"Learning Path","date":"2022-11-26","text":"What is React props? What is React state? unidirectional data flow how to create a React component React hooks (useState, useEffect, and other basics ones) Effects How to handle event handlers (onClick) React Context share state for a subtree Recoiljs How to refactor a class component to hooks Create React App Learn what is a bundler, and how to use webpack, rollback and new solutions like vite. Learn how to do data fetching using pure fetch with useEffect, using react-query, using relay Learn how to do forms using formik Learn how to handle navigation using react-router Learn how to test using testing-library and jest Learn how to code split Learn Suspense Learn ErrorBoundary Learn about virtual dom and optimization Learn how to type components using Typescript Learn how to sync state to some external data like localStorage, cookies, querystring"},{"id":"learning-path/learning-path-web3#0.0","kind":"note","title":"Learning Path Web3","heading":null,"tags":["learning-path","web3"],"url":"/learning-path/learning-path-web3","section":"Learning Path","date":"2022-11-26","text":"learn blockchain concepts learn ethereum learn how to use metamask learn how to use hardhat learn how to deploy and interact with a smart contract learn common smart contract standards like ERC20 (token), ERC721 (nft), ERC1155 (opensea) learn ipfs learn how to read blockchain explorers like learn how to use web3 and etherjs learn solidity learn ABI learn about subgraphs and The Graph learn how to send a tx learn about eth RPC Methods learn how to call a contract method learn solana damn vulnerable crypto wallet damn vulnerable defi smart contract hacking best practices smart contracts general blockchain patterns"},{"id":"mentorship/learning-structure#0.0","kind":"note","title":"learning structure","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/learning-structure","section":"Mentorship","date":"2024-02-25","text":"learning structure \"How can I structure my learning to cover both the fundamental bases and emerging technologies in programming?\" Focus on concepts Structure as a roadmap things that you need to learn, and things that you need to build Check my Learning Paths You need to learn the theory, but you need to build to get the practice, and understand how really works the new tech is just an implementation detail of existing concepts"},{"id":"mentorship/learning-structure#1.0","kind":"note","title":"learning structure","heading":"References","tags":["advice","mentorship","questions","async"],"url":"/mentorship/learning-structure","section":"Mentorship","date":"2024-02-25","text":"References Make it Stick"},{"id":"notes/ledger#0.0","kind":"note","title":"Ledger","heading":null,"tags":["fintech","database"],"url":"/notes/ledger","section":"Notes","date":"2026-10-24","text":"OpenPix HashChain Merkle Trees integrity double account plain text intent to register a transaction"},{"id":"notes/links#0.0","kind":"note","title":"Links","heading":null,"tags":["zettelkasten","web"],"url":"/notes/links","section":"Notes","date":"2026-10-24","text":"&lt;a/ href Links are how we link one content/idea to another Links are the base of internet/web Links are the base for Zettelkasten You can link another website, you can “link” a channel, you can link a Person, you can link a page Links representa references Links are the evolution of references, as you just need to click to know more Link more You link collections using joins or lookups The web of life good shows that isolated parts does not contains the properties of the whole The links bring second order effects to the web We use graphs and edges/links among nodes to represent relationship, like follow unfollow or friendship We can have unidirectional links or bidirectional links As we see in PageRank every node is connected even by a small probability We can use links to show a list of related things Related projects on github Related books"},{"id":"looking-for-the-first-job#0.0","kind":"note","title":"Looking for the First Job","heading":null,"tags":["job","hiring","hack"],"url":"/looking-for-the-first-job","section":"Essays","date":"2026-10-24","text":"Versão em Português This is a very common state for people in college, people before/after a bootcamp, or people from another area. The first job will be the hardest one to get, but it will get easier over time. The interview will be harder than the job itself After knowing a bit of programming, you need to practice a lot (like many hours, 10k hours) to get really good at it. read the book outliers about it (10k rule). gap I do recommend building open source projects with the stack you want to learn and improve. I recommend fullstack javascript If you get stuck you can ask for help on twitter/slack/discord communities and tag me. asking questions (even \"dumb\" ones) will help you process ask in public so more people can learn from the same questions, and you can break your fear of showing that you don't know something I don't know a lot of stuff, the first thing is learning that you don't know something, and trying to figure it out how to learn that after all. You should apply to as many job posting as possible. Do all the code challenges to learn what the companies want you to know, you gonna learn a lot coding them. Do as many interviews so you can get good at interviews. All this practice will get you a job soon or later. it can take some time, you just need to persist. Always ask for feedback for the code challenges and interview, listening to feedback is the only way to"},{"id":"looking-for-the-first-job#0.1","kind":"note","title":"Looking for the First Job","heading":null,"tags":["job","hiring","hack"],"url":"/looking-for-the-first-job","section":"Essays","date":"2026-10-24","text":"improve and learn. There are many ways to learn something, so consume content in a variety of medium (text, video, audio, code), but also make sure that you are not passive learning. You need to be active and build stuff using something that you are reading/watching about it. Advice for developers tweets about it"},{"id":"looking-for-the-first-job#1.0","kind":"note","title":"Looking for the First Job","heading":"References","tags":["job","hiring","hack"],"url":"/looking-for-the-first-job","section":"Essays","date":"2026-10-24","text":"References"},{"id":"notes/make-it-stick#0.0","kind":"note","title":"Make it stick","heading":null,"tags":["learning","books"],"url":"/notes/make-it-stick","section":"Notes","date":"2026-10-24","text":"Read multiple books in parallel to make them stick more Apply concepts in real life to make them stick Exercise/tests can help you Tests yourself knowledge to stop forgetting To learn more stop forgetting interleave content learning learning that takes effort stay deeper in your mind Learn and practice in a multitude of ways, variation is important to learn and be robust to transfer learn to other situations machine learning apply a lot of them it separates training from tests it learns from many different types of examples to learn similarities and divergences substack You can learn anything. I’m a self-learning since very early in my life (12 years old), not everyone try to optimize their learning process. Make it stick is a man awesome book with practical tips on how to improve your learning and memory process. Links Advice to Developers References A Workshop can be good to learn new things in a fast way, as you can watch an expert solve some problems."},{"id":"notes/mappers-vs-packers#0.0","kind":"note","title":"Mappers vs Packers","heading":null,"tags":["learning","mental-models"],"url":"/notes/mappers-vs-packers","section":"Notes","date":"2026-10-24","text":"“knowledge packets” little bits of truth (or errors) that we possess. most learning are almost entirely on the acquisition of knowledge packets things that one should or should not do. data to be retained and later recovered on demand we don't just stack up knowledge packets to gain each new knowledge packet we ask “why” a mental map gives us understanding of cause and effect within a situation. this understanding allow us to derive a solution to any problem within the situation, instead of attempting to select a rote-learned response. mathematicians call “isomorphism”, machine learning calls “invariance”, where you can reapply knowledge we rearrange our mental maps to product simpler expressions, we find it hard when the topic seemed complicated abstract pattern recognition without reflections, there can be no mental maps, only knowledge packets. reflection is daydreaming packing is when you stop youself asking “why” rote-learned memory memória aprendida rote-learned response resposta memorizada you try to find a knowledge packet that fits your situation. without a big map means that you often don't understand what is happening packers are overly concerned about certainty. they don't want to fix their mental model, they wanna validate that their mental model is correct. people are unwilling to think about something unless they are “certain” you fear of being found to be in the"},{"id":"notes/mappers-vs-packers#0.1","kind":"note","title":"Mappers vs Packers","heading":null,"tags":["learning","mental-models"],"url":"/notes/mappers-vs-packers","section":"Notes","date":"2026-10-24","text":"wrong they cannot believe that anything can be achieved unless someone else spells out in exact detail how to do absolutely everything"},{"id":"mentorship/maximize-impact-in-large-organizations#0.0","kind":"note","title":"maximize impact in large organizations","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/maximize-impact-in-large-organizations","section":"Mentorship","date":"2024-02-25","text":"maximize impact in large organizations \"How can I maximize the impact of my projects in large organizations?\" Find team/products/features/projects that will maximize the impact inside your large organization if you are not in the best team, working in the hardest problems of your large organization. Your effort will be limited to your team impact. After finding the hardest problems of your organization and joining the team/squad that work on it. You should show that you can deliver the solutions for these problems with quality. You need to earn trust, and bring your ideas over RFC and win the team. You need to deeply understand the company business, products to understand what needs to be done to make your company succeed."},{"id":"notes/memory-leak#0.0","kind":"note","title":"Memory Leak","heading":null,"tags":["nodejs","testing"],"url":"/notes/memory-leak","section":"Notes","date":"2026-10-24","text":"Memory leak when you allocated some memory and didn't dispose it."},{"id":"notes/mental-models#0.0","kind":"note","title":"Mental Models","heading":null,"tags":["thinking","learning"],"url":"/notes/mental-models","section":"Notes","date":"2026-10-24","text":"A mental model is an Abstractions that let you think more clearly it is packages for our mind. for instance: Occam’s Razor: prefer simpler models as they have less assumptions. simpler is better than complex The great mental models incentives shape behavior Incentives chance behavior Examples of short term incentives? How to align incentives? How to be motivated by uncertainty? A possible payoff is more compelling than a sure thing Winning is fun. Guaranteed winning is not. What is the least effort principles? Laziness is built deep into our nature"},{"id":"mentorship-questions#0.0","kind":"note","title":"Mentorship Questions","heading":null,"tags":["advice","mentorship","questions"],"url":"/mentorship-questions","section":"Essays","date":"2022-11-25","text":"tell me about yourself send me your GitHub send me your LinkedIn what are your short-term goals? what are your long-term goals? what are you right now? only backend, only frontend, fullstack? what stack do you use today? what stack do you wanna learn? what is your current company (if any)? do you have space to grow there? how can I help you? send me a list of questions that you wanna me to answer/help"},{"id":"mentorship-questions#1.0","kind":"note","title":"Mentorship Questions","heading":"BackLink","tags":["advice","mentorship","questions"],"url":"/mentorship-questions","section":"Essays","date":"2022-11-25","text":"BackLink asynchronous-mentorship"},{"id":"notes/meta-programming#0.0","kind":"note","title":"Meta programming","heading":null,"tags":["programming"],"url":"/notes/meta-programming","section":"Notes","date":"2026-10-24","text":"spectrum of abstraction"},{"id":"mentorship/mid-level-developer#0.0","kind":"note","title":"mid level developer","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/mid-level-developer","section":"Mentorship","date":"2024-02-26","text":"mid level developer \"What do I have to do to become a mid-level developer?\" Always ask for more responsibilities and tasks. Always challenge yourself. To increase the amount of weight you lift in the gym, you need to progressively lift heavier weights."},{"id":"notes/mongodb#0.0","kind":"note","title":"Mongodb","heading":null,"tags":["database","mongodb"],"url":"/notes/mongodb","section":"Notes","date":"2026-10-24","text":"Mongodb is a nosql database that bring a lot of innovation in the javascript ecosystem Mongo let us do complex queries using aggregation framework We can use $lookup to join 2 collections, or many other operations as we need Mongo is great because it is close to javascript to do queries and updates. compound indexes To speed up your queries move most of index filtering processing to the top"},{"id":"notes/mvp#0.0","kind":"note","title":"MVP","heading":null,"tags":["startups","product"],"url":"/notes/mvp","section":"Notes","date":"2026-10-24","text":"Minimum Viable Product needs to deliver value to the user. It should feels a Gap of user needs. MVP does not have all the features the users wants, but it has/solves to core user workflow"},{"id":"notes/my-rss-feed#0.0","kind":"note","title":"My RSS Feed","heading":null,"tags":["reading","learning"],"url":"/notes/my-rss-feed","section":"Notes","date":"2026-10-24","text":"The idea of this note is to contain a list of blog posts, sites and other news resources that I can search This will evolve as I change my interests over time. Steve related to RSS"},{"id":"notes/naval#0.0","kind":"note","title":"Naval","heading":null,"tags":["twitter","people"],"url":"/notes/naval","section":"Notes","date":"2026-10-24","text":"Naval is the founder of Angel List, and provide great advices on twitter in form of twitter threads It also has a blog post, runs a newsletters and do podcasts"},{"id":"notes/naval#1.0","kind":"note","title":"Naval","heading":"Links","tags":["twitter","people"],"url":"/notes/naval","section":"Notes","date":"2026-10-24","text":"Links Twitter Advice to Developers"},{"id":"notes/newsletters#0.0","kind":"note","title":"Newsletters","heading":null,"tags":["writing","newsletter"],"url":"/notes/newsletters","section":"Notes","date":"2026-10-24","text":"Newsletters have a different incentive than normal blog posts When you do a blog post, one post is not related to another. The likes from one blog post won't affect another one. When you are building a newsletters, the incentive is to keep producing content in a regular basis to grow your audience (subscribers) Improve First Impression"},{"id":"notes/newsletters#1.0","kind":"note","title":"Newsletters","heading":"Links","tags":["writing","newsletter"],"url":"/notes/newsletters","section":"Notes","date":"2026-10-24","text":"Links"},{"id":"notes/nocode#0.0","kind":"note","title":"NoCode","heading":null,"tags":["nocode","programming"],"url":"/notes/nocode","section":"Notes","date":"2026-10-24","text":"NoCode is building software using \"code\" (pure text). It is a higher level way to build software. You can build software using pre built building blocks (The era of Content Builders You can drag and drop blocks and see they running They follow WYSIWYG (what you see is what you get). We have a variety of nocode to build websites: WebFlow, Wix, Canva For backend the options are more limited: DarkLang One benefit if that you don't have the deploy flow anymore, everything will do is deploied already. You just need to move from dev to staging to production. The feedback loop is much faster. One drawback is that people without coding background will build back data layers, making the nocode application not scale well. We can think of nocode as another Thinking Tools, as we can build fast prototipes, and then just join the pieces to build it up. What is missing to NoCode catch up? Usually you can't compose nocode? Can you build a design system in nocode? How do we share nocode Do we need a package manager for nocode? Incremental approach for you nocode"},{"id":"notes/node-modules#0.0","kind":"note","title":"Node Modules","heading":null,"tags":["nodejs","npm"],"url":"/notes/node-modules","section":"Notes","date":"2026-10-24","text":"node modules is where node keeps all their dependencies one good thing of node modules is that you can easily modify an external package code inside node modules and test your fix before sending a pull request node modules also applies the colocation pattern, where the dependencies are close to the project If you check C,C++,python,ruby, GO and other, the deps are not close to where there are used. So it is much harder to modify deps and contribute back if you use monorepo with yarn workspaces you gonna have many node modules. One at the root and one at each package level. Yarn will hoist same package version range to the node modules in the root. Hoist caused many problems as most tool have the wrong assumptions that node modules is besides the package, and also the package if your node modules is big it is be slow to load packages, as node tranverse the node modules to find it reduce node modules techniques use -production flag node-prune modclean move deps to devDepencies improve .npmignore only pick select fields on package.json"},{"id":"notes/node-modules#1.0","kind":"note","title":"Node Modules","heading":"Links","tags":["nodejs","npm"],"url":"/notes/node-modules","section":"Notes","date":"2026-10-24","text":"Links Colocation"},{"id":"notes/o-1-constant-time#0.0","kind":"note","title":"O(1) - Constant Time","heading":null,"tags":["productivity","learning"],"url":"/notes/o-1-constant-time","section":"Notes","date":"2026-10-24","text":"How can you solve anything fast? At a constant time? Everything that you solved before becomes 0(1) to solve again It basically says that any solution that you come up before should make it straight forward to implement again. To be Productivity you need to be unproductive for many hours."},{"id":"notes/open-source#0.0","kind":"note","title":"Open Source","heading":null,"tags":["opensource","community"],"url":"/notes/open-source","section":"Notes","date":"2026-10-24","text":"Open Source is when you share you code in the public to be consumed to somebody else My history with open source started when I was working in an android app to track sensors information to build a machine learning model my contribution was inside an issue instead of a pull request At that time I didn't understand much about git, git workflows, branches and so on and so forth When I started working on PontoTel I contribute to some angular packages in a more mainstream way. When starting working in react native (very early, lots of stuff to build), I contribute much more as I just needed to change some code inside node modules and send a pull request based on my forks. I've opened a lot of issues in many repos showing all the \"bugs\", \"problems\" and \"limitations\" that I've found when development Brand Lovers. We did revamp the react-native-camera based on expo-camera because we needed to do facial recognition on Gol app and rctcamera couldn't handle it. We decided to copy and paste the code (giving attribution to expo), because back them expo-camera was too tight to \"expo framework\". After all this the RNCamera diverged a lot from expo-camera. I hope someday they will be joined again."},{"id":"notes/open-source#1.0","kind":"note","title":"Open Source","heading":"Links","tags":["opensource","community"],"url":"/notes/open-source","section":"Notes","date":"2026-10-24","text":"Links Community"},{"id":"notes/opinionated#0.0","kind":"note","title":"Opinionated","heading":null,"tags":["programming"],"url":"/notes/opinionated","section":"Notes","date":"2026-10-24","text":"One thing is said to be opinionated when it has made some assumptions, and require you to follow some predefined conventions Opinionated tools make easier to beginners Defer your opinions to opinionated tools so you can focus on what matters"},{"id":"notes/opinionated#1.0","kind":"note","title":"Opinionated","heading":"Links","tags":["programming"],"url":"/notes/opinionated","section":"Notes","date":"2026-10-24","text":"Links Relay"},{"id":"notes/outliers#0.0","kind":"note","title":"Outliers","heading":null,"tags":["books","learning"],"url":"/notes/outliers","section":"Notes","date":"2026-10-24","text":"Outliers is a book that tells the history of success of people The basic concept is that it takes 10k hours of deliberate practice to have great success. Bill Gates had 10k hours when he started Microsoft, he had access to a computer in their school that he hacked to stay coding many hours. Math Concept An outlier can be a dot outside a line/curve An outlier can be anomaly from the rest of points. You want to be an outlier Advice to Developers"},{"id":"notes/outsourcing-the-blame#0.0","kind":"note","title":"Outsourcing the blame","heading":null,"tags":["behavior"],"url":"/notes/outsourcing-the-blame","section":"Notes","date":"2026-10-24","text":"People like to outsource their own blames When something goes wrong with these people, they try to finding something to blame The fault is never their own"},{"id":"notes/package-size#0.0","kind":"note","title":"Package Size","heading":null,"tags":["nodejs","performance"],"url":"/notes/package-size","section":"Notes","date":"2026-10-24","text":"modules npm package sizes matters if you reduce your project dependencies your node modules will be small and it will be fast to run yarn install and also to cache and restore cache Feedback-server has ~2GB of node modules Feedback-admin has ~2GB of node modules"},{"id":"notes/package-size#1.0","kind":"note","title":"Package Size","heading":"Links","tags":["nodejs","performance"],"url":"/notes/package-size","section":"Notes","date":"2026-10-24","text":"Links Productivity"},{"id":"notes/page-based-pagination-with-connections#0.0","kind":"note","title":"Page based pagination with Connections","heading":null,"tags":["relay","graphql"],"url":"/notes/page-based-pagination-with-connections","section":"Notes","date":"2026-10-24","text":"There are no public examples of doing paged based pagination with Connection in Relay Page based is a very common pattern in business apps, so it should be easy in Relay. Artsy made some prior work but it feels not good to me We can augment connection arguments to also include limit and offset to enable page based pagination. We also need to modify Connection Handler to make sure the edges are properly added to the right connection"},{"id":"paid-consulting-startups#0.0","kind":"note","title":"Paid Consulting for Startups","heading":null,"tags":["consulting","paid","startup"],"url":"/paid-consulting-startups","section":"Essays","date":"2026-10-24","text":"Paid Consulting for Startups 1 sync call per month Async chat with me everyday Things I can help you with: Structure your development team processes: daily, product management, code review, automation, ci/cd Validate your team, idea, product and market Reduce scope for your Minimal Viable Product (MVP, and define the MVP, what to focus on, and how to validate it Make you reach Product Market Fit (PMF), using cohort to identify problems in your onboarding and product Scale your process and team"},{"id":"paid-consulting-startups#1.0","kind":"note","title":"Paid Consulting for Startups","heading":"Price","tags":["consulting","paid","startup"],"url":"/paid-consulting-startups","section":"Essays","date":"2026-10-24","text":"Price US$ 120 per month"},{"id":"paid-consulting-startups#2.0","kind":"note","title":"Paid Consulting for Startups","heading":"How to pay","tags":["consulting","paid","startup"],"url":"/paid-consulting-startups","section":"Essays","date":"2026-10-24","text":"How to pay Pix Paypal: sibeliusseraphini@gmail.com Patreon: Github Sponsors:"},{"id":"paid-mentorship-developers#0.0","kind":"note","title":"Paid Mentorship for Developers","heading":null,"tags":["advice","mentorship","paid","developer"],"url":"/paid-mentorship-developers","section":"Essays","date":"2026-10-24","text":"Paid Mentorship for Developers 1 sync call per month Async chat with me everyday Things I can help you with: I can help you get your first job I can help you get a better job I can help you get to a more Senior Level I can help you transition from IC to management I can help you manage your team I can help you manage your product I can help you fix technical debt, improve your archicture and data modeling skills"},{"id":"paid-mentorship-developers#1.0","kind":"note","title":"Paid Mentorship for Developers","heading":"Price","tags":["advice","mentorship","paid","developer"],"url":"/paid-mentorship-developers","section":"Essays","date":"2026-10-24","text":"Price US$ 120 per month"},{"id":"paid-mentorship-developers#2.0","kind":"note","title":"Paid Mentorship for Developers","heading":"How to pay","tags":["advice","mentorship","paid","developer"],"url":"/paid-mentorship-developers","section":"Essays","date":"2026-10-24","text":"How to pay Pix Paypal: sibeliusseraphini@gmail.com Patreon: Github Sponsors:"},{"id":"notes/pain-minimization#0.0","kind":"note","title":"Pain Minimization","heading":null,"tags":["behavior","programming"],"url":"/notes/pain-minimization","section":"Notes","date":"2026-10-24","text":"We avoid switching from products/languages and more to before of pain minimization. We only change when we identify the new product is way better and worth the change."},{"id":"notes/parsers#0.0","kind":"note","title":"Parsers","heading":null,"tags":["programming","compilers"],"url":"/notes/parsers","section":"Notes","date":"2026-10-24","text":"Early algorithm"},{"id":"notes/paypal-mafia#0.0","kind":"note","title":"Paypal mafia","heading":null,"tags":["startups","culture"],"url":"/notes/paypal-mafia","section":"Notes","date":"2026-10-24","text":"Recognize young people with extraordinary ability Extreme Focus everyone should only have initiative Dedication to individual accomplishment each innovation were driven by a single person Refusal to accept constraints, external or internal if you can't solve a problem, someone else will solve this for you. Driven problem solvers: smart, driven problem solvers, you just need to be able to solve any problem that appeared Self-sufficiency: figure it out how to achieve your goals Extreme bias towards action: you should ship to production Willingness to try: try new directions often Data-driven decision making: do your homework, bring your data to support your decisions. Radical transparency on metrics: share your metrics and let the team extract info Vigorous debate, often via email: every critical issue needs a champion and critics Extreme Pressure: be able to work on extreme pressure"},{"id":"notes/people-recommendation#0.0","kind":"note","title":"People Recommendation","heading":null,"tags":["career","reputation"],"url":"/notes/people-recommendation","section":"Notes","date":"2026-10-24","text":"Young people does not realize how they are killing their social proof Why I can't recommend you anymore I can't recommend you anymore because you lie You lie that you are going to commit to that company, project, but you just disappear I can't recommend you because you do not take responsibility for your actions, you blame others instead of saying that you did something wrong. I can't recommend you because you don't care. You don't care about my friends. People came to me for recommendations because they know my reputation. They know I know a lot of good developers because I keep mentoring a lot of them. They know that I won't recommend a bad developers (not only bad code), but bad matters. A good reputation can open a lot of good opportunities for you A bad reputation will close many of them."},{"id":"notes/perishable#0.0","kind":"note","title":"Perishable","heading":null,"tags":["management","startups"],"url":"/notes/perishable","section":"Notes","date":"2026-10-24","text":"We have perishable problems and opportunities A perishable problem is one that is small at first and can get big fast, so you need to handle it quickly Example: fire, it is easier to handle small fires. A perishable opportunity will only be available to the one that grab it first. Example.: the first company with a covid tracking solution will win the market. The first vaccine will earn a lot of money with roalties Decentralization can help you solve these perishable problems and to use the opportunities quickly Escalation can help find important problems We a mission to align decentralized resources A mission is a declarative way of the final state It does not matter what steps or how to achieve this final state Make intent clear “If you are going to worry about it, I won’t” What is our main effort? Main effort of your product? Core features that differentiate from another"},{"id":"notes/personal-crm#0.0","kind":"note","title":"Personal CRM","heading":null,"tags":["productivity","networking"],"url":"/notes/personal-crm","section":"Notes","date":"2026-10-24","text":"CRM is a Customer Relationship Managment CRM is usually used in business to track interaction with potential customers We think in a Personal CRM as a tool to track interaction with people from our life. If you wanna remember somebody, we need to make them findable Adding them to our zettelkasten could be a good idea. Add info about the person Add people related to this person The company they are working on or worked for where they live what are they interesting in what books they recommend their ideas Search Human Search Engine"},{"id":"notes/personal-website#0.0","kind":"note","title":"Personal Website","heading":null,"tags":["writing","career"],"url":"/notes/personal-website","section":"Notes","date":"2026-10-24","text":"I want to design a blog post for me. I didn't do it because I'm too perfectionist. This should be my output digital garden What are the use cases of my website? It should show my contacts and social network it can contains a list of blog posts (written content) it can contains my proof of work (work projects, open source projects, talks) it should contains my talks and slides it can also contains some videos or podcasts it should accept feedback it should be able to hire me to do code review What is missing? I need a design I need a domain I need to ship a very bad first version of it"},{"id":"notes/personal-website#1.0","kind":"note","title":"Personal Website","heading":"Links","tags":["writing","career"],"url":"/notes/personal-website","section":"Notes","date":"2026-10-24","text":"Links CSS Design Enable comments using github issues Buy me a coffee using gumroad api"},{"id":"notes/playground#0.0","kind":"note","title":"Playground","heading":null,"tags":["javascript","tools"],"url":"/notes/playground","section":"Notes","date":"2026-10-24","text":"Playground Repl iPython Run javascript code in the browser, multi line it should work locally it should work with md(x) it should works with react components it should work with node code each to add more blocks of commands see result of each block node-playground myfile.mdx eval vs new Function"},{"id":"notes/practical-benefits-of-an-event-driven-approach#0.0","kind":"note","title":"Practical Benefits of an Event Driven Approach","heading":null,"tags":["event-driven","architecture","writing"],"url":"/notes/practical-benefits-of-an-event-driven-approach","section":"Notes","date":"2026-10-24","text":"feedback Reviewer 1 we can't easily just reprocess newPayment without reprocessing the whole transactionSync example of this if newPayment had a bug it won't affect transactionSync you can save events to reprocess then example of monitoring, apm Reviewer 2 Very good article with interesting content. Woovi's approach is very like the approach that we are using at another company for payments notifications. 1 “Three successive sentences begin with the same word”: To code newPayment you need to understand how transactionSync works, more cognitive load To test newPayment, you need to test transactionSync together, as a consequence you have a more complex test with more complex fixtures and test scenarios. To refactor newPayment, you could break transactionSync, these codes are highly coupled. 2 “This sentence does not start with an uppercase letter”: To the following phrases: we can't easily just reprocess newPayment without reprocessing the whole transactionSync we can easily reprocess newPayment without reprocessing the whole transactionSync Reviewer 3 um pequeno typo no texto: To code newPayment you DON’T need to understand how transactionSync works, fewer cognitive load Reviewer 4 \"This article aims to give a real world example and it this clear.\" \"This article aims to give a real and clear example.\" \"The bank sends a new transaction webhook for Woovi backend\" replace \"webhook"},{"id":"notes/practical-benefits-of-an-event-driven-approach#0.1","kind":"note","title":"Practical Benefits of an Event Driven Approach","heading":null,"tags":["event-driven","architecture","writing"],"url":"/notes/practical-benefits-of-an-event-driven-approach","section":"Notes","date":"2026-10-24","text":"to Woovi's backend\" coproduto To code newPayment you do need to understand how transactionSync works, fewer cognitive load acho que era \"you do NOT need to understand\" E nesse caso é \"less\", não \"fewer\" Fewer só se usa com coisas contáveis Tipo, você pode falar \"fewer potatoes\" mas não \"fewer water\" (porque batatas são contáveis, mas água não é) eu consideraria \"cognitive load\" incontável Fewer também só se usa em comparações Você pode considerar que tem uma comparação implícita aí, mas ainda tem o problema da contabilidade De resto eu curti a ideia do post Mas eu acho que não ficou muito claro como que isso funcionaria sem usar microsserviços Eu imagino que você esteja usando um job queue ou algo do tipo? Talvez fosse bom explicitar como é que esses eventos vão ser processados sem usar serviços pq do jeito que está parece que você só está jogando um evento pro vácuo e de alguma forma o processamento acontece Outra coisa também é que não ficou muito claro por que é que as coisas seriam desacopladas Afinal, você pode escrever a função newPayment de forma desacoplada sem usar eventos também, só tem um ponto de acoplamento necessário entre os dois que é o payload que essa função vai receber E esse continua, n né os dois lados têm que concordar com o formato do evento Então talvez fosse bom explicitar de que tipo de acoplamento você tá falando"},{"id":"notes/practical-investing#0.0","kind":"note","title":"Practical Investing","heading":null,"tags":["investing","economics"],"url":"/notes/practical-investing","section":"Notes","date":"2026-10-24","text":"Investing pesquisar ações e fundo imobiliarios com yield grande de dividendos mensais bancos, eletricas, seguradoras operadora Clear Toro investimento"},{"id":"notes/principles-of-product-development-flow#0.0","kind":"note","title":"Principles of Product Development Flow","heading":null,"tags":["books","product","productivity"],"url":"/notes/principles-of-product-development-flow","section":"Notes","date":"2026-10-24","text":"This book is about techniques to improve your product development flow In manufacturing you generate value creating the same product In product development you only generate value modifying your existing product Fullstack handles better variable demand you can model backend and frontend engineer as processors of queues If you have variable demands Sometimes you gonna have much work on backend and sometime more work on frontends In both scenario you gonna delay your tasks product development Fullstack acts as a single poll of resources that can handle any item in the queue, causing less delays Fast refresh is about iteration speed Integration speed reduces defects human version of this book"},{"id":"notes/principles-of-product-development-flow#1.0","kind":"note","title":"Principles of Product Development Flow","heading":"Links","tags":["books","product","productivity"],"url":"/notes/principles-of-product-development-flow","section":"Notes","date":"2026-10-24","text":"Links Productivity Small Batches Sizes"},{"id":"private-community#0.0","kind":"note","title":"Private Community","heading":null,"tags":["private","paid","community","developer","startup"],"url":"/private-community","section":"Essays","date":"2026-10-24","text":"Private Community A discord community to discuss with me and high-minded people about your startup, product, and software development. High-level discussions with Builders."},{"id":"private-community#1.0","kind":"note","title":"Private Community","heading":"Price","tags":["private","paid","community","developer","startup"],"url":"/private-community","section":"Essays","date":"2026-10-24","text":"Price US$ 10 per month"},{"id":"private-community#2.0","kind":"note","title":"Private Community","heading":"How to pay","tags":["private","paid","community","developer","startup"],"url":"/private-community","section":"Essays","date":"2026-10-24","text":"How to pay Pix Paypal: sibeliusseraphini@gmail.com Patreon: Github Sponsors:"},{"id":"notes/product-development#0.0","kind":"note","title":"Product Development","heading":null,"tags":["product","startups"],"url":"/notes/product-development","section":"Notes","date":"2026-10-24","text":"3 buckets a gamechanger: people buy because of this feature a showstopper: people won't buy without it, but adding it won't generate demand a distraction: feature with no value added some gamechangers features are an aggregate of features avoid ad-hoc decisions use missing as a function to make decisions"},{"id":"notes/product-vision#0.0","kind":"note","title":"Product Vision","heading":null,"tags":["product","strategy"],"url":"/notes/product-vision","section":"Notes","date":"2026-10-24","text":"Vision Strategy Tactics"},{"id":"notes/productivity#0.0","kind":"note","title":"Productivity","heading":null,"tags":["productivity"],"url":"/notes/productivity","section":"Notes","date":"2026-10-24","text":"To be productivity we need our workflows to be fast We also need our workflows to be easy to use creating a new pull request should be fast creating a new test should be run run a test should be fast iterations should be fast fast refresh, hot reload enable a fast feedback loop a fast laptop and mobile phone makes you more productivity"},{"id":"notes/productivity#1.0","kind":"note","title":"Productivity","heading":"Links","tags":["productivity"],"url":"/notes/productivity","section":"Notes","date":"2026-10-24","text":"Links Second Brain"},{"id":"notes/programing-bottom-up#0.0","kind":"note","title":"Programing Bottom Up","heading":null,"tags":["programming","abstractions"],"url":"/notes/programing-bottom-up","section":"Notes","date":"2026-10-24","text":"Programing Bottom Up is about creating the low level building blocks improving the language to create your product. With the correct building blocks you have a smaller code, as they solve more of your problems building blocks makes it easy to reuse code it had a Typo not really) Building Block The Nonesuch Beast related to this, as if you work with simple low level blocks you avoid crazy requirements and make your product easy to use, and let the user create their own workflows. A low level building block is an Abstractions in the right place"},{"id":"programming-fundamentals#0.0","kind":"note","title":"Programming Fundamentals","heading":null,"tags":["concepts","implementation"],"url":"/programming-fundamentals","section":"Essays","date":"2026-10-24","text":"Programming fundamentals variables data structures function type theory control flow (conditionals, loops) paradigms (functional, objected oriented) tests debugging algorithm Software Development Life Cycle (SDLC)"},{"id":"mentorship/project-transitions#0.0","kind":"note","title":"project transitions","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/project-transitions","section":"Mentorship","date":"2024-02-25","text":"project transitions \"How can I transition from personal projects to more complex or commercial technology projects?\" The only way is to go to production. You can't learn using only personal projects that do not have outside users/customers. You need real users to provide feedback to see if your product is good or bad, and if your code is good or bad. You need a side project with real users, or you need to get freelancers or a real job At Woovi we are learning a lot everyday because we have more and more users using our product at scale."},{"id":"notes/proof-of-work-for-developers#0.0","kind":"note","title":"Proof of Work for Developers","heading":null,"tags":["career","learning"],"url":"/notes/proof-of-work-for-developers","section":"Notes","date":"2026-10-24","text":"As a developer you can have many types of proof of work You can have a portfolio website that shows all your past projects (a few dots of your path) You can have some contributions to open source projects (more dots of your path) You can use learn in public strategy to have as many dots as possible about what went right and what went wrong in your learning path People that can create new things are rare You can have a CV or Linkedin (worse proof of work), as anybody can say anything on it."},{"id":"qa-college#0.0","kind":"note","title":"Q&A College","heading":null,"tags":["qa","college"],"url":"/qa-college","section":"Essays","date":"2022-11-26","text":"As perguntas são muito mais relacionadas à graduação. Você acha que o fato de possuir uma graduação na USP te ajudou? Em quais aspectos? Todo conhecimento acaba te ajudando. Toda a minha base teórica me permite aprender coisas novas mais rapidamente. Se você escolhesse não ir para a faculdade, você acha que estaria como? Minha família é não é rica, acredito que a faculdade me deu confiança e que o diploma da USP me ajudou a conseguir o primeiro emprego. A faculdade não é só conhecimento. Você faz amigos, você curte as festas, morar sozinho te faz crescer como pessoa, você aprende com a diversidade das pessoas, eu morei na república 7 eh Poko te me ajudou nas minhas social skills. Eu consegui fazer iniciação científica que melhorou meu modo de pensar, eu tive artigos aceitos em conferências e apresente 2 vezes internacionalmente, França e Polônia, tudo pago pela USP. Eu também consegui fazer o ciências sem fronteiras, 1 ano nos USA, que me tornou fluente em inglês e abriu minha cabeca para o mundo. Se eu tivesse otimizado minha vida no começo para ganhar mais eu saberia menos hoje. A experiência de mercado acaba sendo equivalente à uma graduação, ou até melhor? Conhecimentos distintos, ambos são importantes. O que você de hoje falaria para o seu eu de 18 anos, quando estava entrando na faculdade? Eu tentaria ler mais sobre startups, sobre empreendedorismo. Eu caí no mundo das"},{"id":"qa-college#0.1","kind":"note","title":"Q&A College","heading":null,"tags":["qa","college"],"url":"/qa-college","section":"Essays","date":"2022-11-26","text":"startups por acaso. Eu comecei a fazer trilha graduação mestrado, fiz 1 semestre fãs matérias de mestrado, meio orientador foi para outro país e eu resolvi aplicar para um estágio de verão na PontoTel. No final eu descobri que as pessoas mais inteligentes do mundo trabalham com negócios e startups. Por que optar por fazer uma faculdade e não somente ser autodidata e estudar somente as coisas que o mercado pede? Nem tudo é trabalho ou dinheiro. Se você tiver condições de se manter na faculdade eu faria e focaria em aprender o máximo possível. As coisas que o mercado pede sempre vai mudando, você precisa estudar os conceitos que são timeless. Os conceitos não mudam. A base. Partindo da teoria que a gente aprende muito mais em startups ou empresas, por que não ficar 4 anos em empresas invés ficar 4 anos ou mais em uma graduação? Ao optar por não cursar uma faculdade, você tem que mostrar para o mundo que você é muito bom. Isso é o caminho mais difícil, mas escala melhor ao longo prazo. É antifragil. Você utiliza ainda a parte de exatas da graduação na sua carreira? Matemática, grafos, algoritmos ainda utilizo diretamente e indiretamente. Todo conhecimento te ajuda para resolver algum problema novo. Você tem que focar em coisas que te permitam resolver o maior número de problemas"},{"id":"notes/reading-experience#0.0","kind":"note","title":"Reading experience","heading":null,"tags":["frontend","design","writing"],"url":"/notes/reading-experience","section":"Notes","date":"2026-10-24","text":"When designing a blog post with text content you need to think about the line length and the correct css unit to handle it Good defaults 70ch 35-40em"},{"id":"notes/reading-experience#1.0","kind":"note","title":"Reading experience","heading":"Links","tags":["frontend","design","writing"],"url":"/notes/reading-experience","section":"Notes","date":"2026-10-24","text":"Links CSS Design"},{"id":"notes/reading-experience#2.0","kind":"note","title":"Reading experience","heading":"References","tags":["frontend","design","writing"],"url":"/notes/reading-experience","section":"Notes","date":"2026-10-24","text":"References"},{"id":"notes/reality-has-a-lot-of-details#0.0","kind":"note","title":"Reality has a lot of details","heading":null,"tags":["learning"],"url":"/notes/reality-has-a-lot-of-details","section":"Notes","date":"2026-10-24","text":"It is related to being Realistic of Principles Ray Dalio Being realistic is to listen to reality, and learn all details of it. It does not matter all your knowledge of your backend if you want to be productive in CSS CSS has a lot of details, so you need to learn, practice and learn all of them to be productive Cooking has a lot of details, just reading the recipe won't make your a good meal Books can't tell all the details Reading all blog posts about Server Side Rendering (SSR) is not enough to properly implement it in a production app. The same is valid for most of the development tasks, like setting up a react native project, fixing a webpack weird bug and so on. You need to get your hands dirty with \"reality\" to understand what tiny details that matter."},{"id":"notes/relay#0.0","kind":"note","title":"Relay","heading":null,"tags":["relay","graphql","opensource"],"url":"/notes/relay","section":"Notes","date":"2026-10-24","text":"I'm known in open source mostly by my Relay contributions I'm also know because of react-native contributions Relay is a data fetching that scales, it let you declare which data each components needs, and it will get the data for you Relay only works with GraphQL server, it has this hard requirements to make it possible to achieve their goals Relay is made by Facebook and they work close to React team I'm generating content about Relay since the beginning as the docs are \"hard\" to follow My first contributions was most blog posts in medium, then I've made a bigger relay modern course that was more a set of slides. React Europe invited me to give a workshop about new Relay apis, so relay workshop is a set of 12 exercises that teach most of the Relay concepts in a practical way building a social network. I also gave a lighting talk about Relay concepts in less then 10 minutes Relay Concepts React Europe"},{"id":"notes/relay#1.0","kind":"note","title":"Relay","heading":"Links","tags":["relay","graphql","opensource"],"url":"/notes/relay","section":"Notes","date":"2026-10-24","text":"Links Community Colocation Relay colocate data besides component"},{"id":"notes/release-every-time#0.0","kind":"note","title":"Release every time","heading":null,"tags":["devops","deploy"],"url":"/notes/release-every-time","section":"Notes","date":"2026-10-24","text":"avoid git flow ci/cd automated automated tests staging environment rollout lint apm error monitoring alertas decoupled services release only parts that changed"},{"id":"notes/remote-cache#0.0","kind":"note","title":"Remote Cache","heading":null,"tags":["tooling","ci"],"url":"/notes/remote-cache","section":"Notes","date":"2026-10-24","text":"We want to build less The basic idea of incremental build is to check the timestamp of each file, and check which files has changed from the last build, and only rebuild them. A remote cache would help us achieve this in our local and remote machines It would also make our CI faster. what is the missing POC of what needs to be build or tested? The article above explain how a bazel like system works."},{"id":"notes/repeat-yourself#0.0","kind":"note","title":"Repeat yourself","heading":null,"tags":["learning","teaching"],"url":"/notes/repeat-yourself","section":"Notes","date":"2026-10-24","text":"If you wanna teach someone something you need to repeat yourself If you wanna something to stick (Make it stick), this thing should show up more then once. When doing UX try to show the same action in different places and context, so you can have more chances of the user using it. When Learning a new language, you need to see the same words and structure more than once to remember then. You also need to see them in different context, in a variety ways. When learning to solve a problem or coding, you need to solve variety of problems with the same concepts to master it We pass many different training data to machine learning algorithms so they can learn and learn all the variantions. So you can become invariant to changes, much like SIFT algorithm. SIFT can detect the same image in different orientation, scale, You want to be invariant to be able to transfer the knowledge to other context. I can only sum apples."},{"id":"notes/research#0.0","kind":"note","title":"Research","heading":null,"tags":["learning","research"],"url":"/notes/research","section":"Notes","date":"2026-10-24","text":"Research is when you look for a lot of related of something that you wanna understand more. (a topic, a problem, a solution, a book, a person). When you are looking to solving a problem (a coding one), you first search for the existing solutions. As prebuilt packages that you can just install and keep using. You also check books, blog posts to check how it works with pros/cons Research happens before Writing. You research to find prior art, and not reinvent something that already exist."},{"id":"notes/resolution#0.0","kind":"note","title":"Resolution","heading":null,"tags":["writing","productivity"],"url":"/notes/resolution","section":"Notes","date":"2026-10-24","text":"We can separate medias in low and high resolution. Low resolution gives you less detail and you need to fill what is missing with your own context. High resolution gives you much more detail, so you don't have any misunderstanding When production content, you can produce using low or high resolution. I think the first draft of anything should be low resolution When doing the first version of the code you should not care about all the tiny details, keep the high resolution to the end. When doing the first design, do the first draft with \"low\" quality, with less details, maybe even without colors, prefer a wireframe. When building a house you build first the structure and you finish the house wall paint color in the end If you try to product both low and high resolution at the same time you going to struggle. You can think of it as building your content/code/house in layers. Each layer will have more details, and more resolution than the last one. Information"},{"id":"notes/responsive#0.0","kind":"note","title":"Responsive","heading":null,"tags":["frontend","css"],"url":"/notes/responsive","section":"Notes","date":"2026-10-24","text":"Responsive Read There are many things that you need to consider to make a website responsive layout images video CSS Book Responsive patterns"},{"id":"notes/reverse-study#0.0","kind":"note","title":"Reverse study","heading":null,"tags":["learning"],"url":"/notes/reverse-study","section":"Notes","date":"2026-10-24","text":"The problem was to identifier the speaker for a given audio My first approach was the research about state of art of speaker recognition Then I implemented and tested a few, and choose the best one The implementation also included the data cleaning and preprocessing part. After that I need to expose this in a API Then I read how to build an API in Python and choose flask to it The api would accept new training data and will score new voices"},{"id":"notes/risk#0.0","kind":"note","title":"Risk","heading":null,"tags":["decision-making","productivity"],"url":"/notes/risk","section":"Notes","date":"2026-10-24","text":"You can't avoid risk in your life. Every decision will take has an inherent risk on it You need to risk to get more upside Design your life to be able to take more and more risks overtime, so you can get more upside To be more Productivity you need to bet in other models and techniques that could make you less productive in the short term but it will better in Long Term"},{"id":"notes/root-cause-analysis#0.0","kind":"note","title":"Root Cause Analysis","heading":null,"tags":["debugging","typescript"],"url":"/notes/root-cause-analysis","section":"Notes","date":"2026-10-24","text":"Most developers don't know how to find the root cause of a bug. The root cause is the \"real\" cause of a problem. Let's see any example with typescript, let's see this code: For some reason typescript is inferring user having type any instead of IUser. If you don't go find the root cause of this, you gonna fix this like this: now, user has the right type, but if you another developer uses findOne it will be the type any again. You solved your problem, but you didn't solved the real cause of the problem The right way to solve this is to ask \"why findOne is inferring the wrong type?\". Then you go over mongoose typedefs, and realize that someone made a regression and cause this trouble So you send a fix to mongoose types, apply a patch-package in your repo, and this is fixed to everybody in your team. If you don't do this, you gonna propagate the error in the whole codebase"},{"id":"notes/rss#0.0","kind":"note","title":"RSS","heading":null,"tags":["reading","content"],"url":"/notes/rss","section":"Notes","date":"2026-10-24","text":"RSS let websites publishes new content notifying who subscribes to the channel When you build/curate your input things that you want to read, you have a much better experience People usually consume data from twitter/reddit/medium and other websites, they are not curated to your workflow and has a lot of noise and unworth information the cons part of curate your input is that it takes much more time to refine it pros: much better content with less bad ones"},{"id":"notes/rss#1.0","kind":"note","title":"RSS","heading":"Links","tags":["reading","content"],"url":"/notes/rss","section":"Notes","date":"2026-10-24","text":"Links Newsletters"},{"id":"notes/saas#0.0","kind":"note","title":"SaaS","heading":null,"tags":["startups","business"],"url":"/notes/saas","section":"Notes","date":"2026-10-24","text":"SaaS is Software as a Service. Instead of customer paying an unique time for a software in a box, it pays for a service and the deliver of the software in a daily/monthly basis. Opposite to Software House that deliver the software once and that's it. it is hard to sell a digital good, as the sound industry discovered. Users will pirate their mp3 to listen to music. The subscription means that you're going to deliver value over time. A subscription only makes sense if you keep delivering value over time. A SaaS uses a subscription as a two way incentive to deliver value over time. At Entria we started as a Software House development software for big companies like Natura and Gol. Then we transitioned to Feedback House, our SaaS product. SaaS has a Long Term incentive, as we need to keep improving our product to sales to more users and keep current users happy without churning."},{"id":"notes/sapiens#0.0","kind":"note","title":"Sapiens","heading":null,"tags":["books","history"],"url":"/notes/sapiens","section":"Notes","date":"2026-10-24","text":"the history of Homo sapiens What made Homo sapiens unique? Thinking capabilities Believing in invented orders Gossip trust collective consciousness is when everybody believes in an imaginary order Big animal was extinct because it needs a lot of food and they reproduction cycle was slow. Homo sapiens used tools to hunt Agriculture was a luxury trap A worse life but it made humans to reproduce more Males always dominated, but not sure why Strong, motherhood. money changes values for heartless supply demand rule"},{"id":"notes/saving-a-project-on-fire#0.0","kind":"note","title":"Saving a project on fire","heading":null,"tags":["engineering","testing","management"],"url":"/notes/saving-a-project-on-fire","section":"Notes","date":"2026-10-24","text":"Have you ever been in a project that was on A project is on 🔥when it passed the deadline. When the developer team are put on a \"war room\" to make sure there is no distractions to finish the project. The project is on 🔥when there are a lot of basics bugs, like when you click a button it just blow off your application. The project is on 🔥when new code of a bug fix causes more harm them good, you fix 1 thing to discover you break 2. It just feel you won't leave this project anymore o/. How to save a project like this? To fix a project like this we need 3 things: automation; types and tests; The first thing to setup is automation: CI/CD. CI/CD will make sure we always run some tests in an automated way. it should make sure our dependencies are working well (running yarn install, for instance) it should make sure our lint is all set. it should make sure we don't have wrong types. it should make sure our tests pass. You also need to setup lint-staged to run pre checks before commiting new code. Lint-staged will run some checks based on commited files, so you make sure each least these files follow the new code pattern. Everything should be incremental You should add more types and tests based on the bugs report. For each bug you need to improve types and add regression tests to make sure you won't get the same bug again. To make sure you are moving forward without going backwards."},{"id":"notes/search#0.0","kind":"note","title":"Search","heading":null,"tags":["productivity","search"],"url":"/notes/search","section":"Notes","date":"2026-10-24","text":"Search is the way we find information We use google in a daily basis to find websites, places, products, flights and more using a query Mac Spotlight let us find \"anything\" in our desktop. It can find documents, applications and more. Some apps has a spotlight search approach, in notion you can find pages and more. Webstorm let you search for filenames, variables, functions, classes, components and more. What if you could have an universal search for everything in the world, and for our personal information? Google is good to find information about the world but it isn't good enough to find information based on our context. To make search fast we need to index the data, Zettelkästen is the system to make sure our knowledge is easy to find later on."},{"id":"notes/search#1.0","kind":"note","title":"Search","heading":"Links","tags":["productivity","search"],"url":"/notes/search","section":"Notes","date":"2026-10-24","text":"Links Productivity Index Tray App Human Search Engine"},{"id":"notes/second-brain#0.0","kind":"note","title":"Second Brain","heading":null,"tags":["zettelkasten","productivity"],"url":"/notes/second-brain","section":"Notes","date":"2026-10-24","text":"The idea of second brain is to build a process to help us think better and clearer It will also help us find ideas and information when writing, building a project or argument You can think of second brain as a conversation pattern that will help you think clearly and keep everything that you should remember when processing new information"},{"id":"notes/second-brain#1.0","kind":"note","title":"Second Brain","heading":"Links","tags":["zettelkasten","productivity"],"url":"/notes/second-brain","section":"Notes","date":"2026-10-24","text":"Links Zettelkasten"},{"id":"notes/second-order-effect#0.0","kind":"note","title":"Second Order Effect","heading":null,"tags":["thinking","mental-models"],"url":"/notes/second-order-effect","section":"Notes","date":"2026-10-24","text":"Not sure if we can list this as a Mental Models, but second order effect are everywhere The benefits of containers for shipping goods was only shoed as a second order effect, when all the infrastructure has adapt to it. Code test can catch second order effect that you even haven't think of. Second order effect are not easily thought, as it needs the first order to happen first, and they have a delayed time to run. Second order effects can cause a Feedback Loop"},{"id":"notes/serendipity#0.0","kind":"note","title":"Serendipity","heading":null,"tags":["zettelkasten","learning"],"url":"/notes/serendipity","section":"Notes","date":"2026-10-24","text":"How to Take Smart Notes Serendipity is when something happen by chance Serendipity of books happened when we were browsing/searching books in libraries We were looking for a book and find another good one. This does not happen anymore as we don’t go to libraries anymore. Can we make serendipity happen? Zettelkasten note linking enable insights (serendipity thoughts) when revisiting the notes"},{"id":"notes/share#0.0","kind":"note","title":"Share","heading":null,"tags":["community","learning"],"url":"/notes/share","section":"Notes","date":"2026-10-24","text":"Why do I share? I share my knowledge so more people can learn fast I share to check if my \"knowledge\" is correct Sharing stuff people will share more stuff with you Open source is about sharing your codes so people can reuse them, spending less time to build Share good stuff when you are going to be rewarded"},{"id":"notes/share#1.0","kind":"note","title":"Share","heading":"Links","tags":["community","learning"],"url":"/notes/share","section":"Notes","date":"2026-10-24","text":"Links Community you can create a community sharing good stuff"},{"id":"mentorship/should-i-be-a-specialist#0.0","kind":"note","title":"should i be a specialist","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/should-i-be-a-specialist","section":"Mentorship","date":"2024-02-26","text":"should i be a specialist \"Be a fullstack learning the basics about front-end and specializing in back would be the best?\" You should focus on solve problems"},{"id":"notes/show-work-progress#0.0","kind":"note","title":"Show work progress","heading":null,"tags":["communication","career"],"url":"/notes/show-work-progress","section":"Notes","date":"2026-10-24","text":"Instead of awaiting someone to ask for your work progress you need to show work progress keep stackholders in loop so you can converge fast to the right solution"},{"id":"notes/sibelius-feedback#0.0","kind":"note","title":"Sibelius Feedback","heading":null,"tags":["feedback","engineering"],"url":"/notes/sibelius-feedback","section":"Notes","date":"2026-10-24","text":"hire more developers seniors how to increase number of features? how to increase quality? you need to give me fewer work Daily How to get ready for daily meeting? How to prepare for a meeting? Planning Write down what is missing to be done Write down the next steps visibility Discussion Ask a lot of questions, until you don't have any uncertainty propose your solution and ask for feedback treat you like an adult more responsibility basics code review write and discuss issue ask for feedback, qa o que eles tem que começar a fazer perguntar mais mais discussoes em publico, e discord/twitter testar muito mais entender a dor do cliente se planejar melhor melhorar a visibilidade do seu trabalho melhorar o show tell da daily (mostrar o que está sendo feito, e o que falta) melhorar code review o que eles tem que parar de fazer não codar testes, failing tests não fazer uma issue porque achou legal o que eles tem que continuar fazendo elabora a issue quando voce está desenvolvendo a issue divide in 2 parts? first write the draft of the issue, problems how we gonna develop the issue? do not know everything about the code what problems we gonna face how to organize the tasks, and subtasks how to solve missing knowledge? plateau of knowledge how to manage context? more dev-docs quebrar issues grandes em issues menores não está claro o que tem que ser feito test plan test scenarios mais"},{"id":"notes/sibelius-feedback#0.1","kind":"note","title":"Sibelius Feedback","heading":null,"tags":["feedback","engineering"],"url":"/notes/sibelius-feedback","section":"Notes","date":"2026-10-24","text":"docs,"},{"id":"notes/side-project#0.0","kind":"note","title":"Side Project","heading":null,"tags":["learning","programming"],"url":"/notes/side-project","section":"Notes","date":"2026-10-24","text":"Side Project is a project that you do for fun or because you like or you want to learn something Here is my list of Side project ides Playground mdx based playground similar to iPython Word suggestion chrome extension"},{"id":"notes/sigmund-freud#0.0","kind":"note","title":"Sigmund Freud","heading":null,"tags":["psychology"],"url":"/notes/sigmund-freud","section":"Notes","date":"2026-10-24","text":"Id Uncoordinated instituals desires Ego seeks to pleases Id People get upsets to make Ego feels well. Superego Critical and moralizing related to Carl Gustav Jung"},{"id":"simply#0.0","kind":"note","title":"Simply","heading":null,"tags":["simply"],"url":"/simply","section":"Essays","date":"2026-06-07","text":"Why most people don't try to come up with the simplest design? Why most people don't try to use the simplest solution to solve a problem? Why not use the solution with fewer parameters? Why not use the smallest code? Why most people do not try to simplify existing products? It is easy to sell complexity. It is easy to sell more features. It is easy to appear smart to propose a complex solution. It is easy to write a far-fetched article. I love mathematics, physics, and science. They are always trying to explain everything with fewer axioms, with the smallest formulas. They want to unify many theories into fewer ones. It is interesting how \"simple\" things can generate complex systems. Mandelbrot formula is so simple but generates amazing fractals. Einstein's Mass-energy Equation is just 3 letters and it is so profound. When designing something new, always try to come up with the simplest design possible. When modifying an existing system, try to simplify and reduce entropy before adding new features. Artificial Inteligence is our best signal-noise filter. AI will help us simplify everything. Complexity is entropy and noise."},{"id":"notes/single-bin-javascript#0.0","kind":"note","title":"Single Bin JavaScript","heading":null,"tags":["javascript","nodejs"],"url":"/notes/single-bin-javascript","section":"Notes","date":"2026-10-24","text":"node modules is too big and usually it has many things that you don’t need to use It has Readme.md It has examples It has tests and other unrelated code It would be could to generate a single bin that uses tree shaking to make docker small and run better in lambda envs It will also make node run faster as it has to process less files We can remove the need for node modules Node Modules"},{"id":"notes/skin-in-the-game#0.0","kind":"note","title":"Skin in the Game","heading":null,"tags":["books","economics"],"url":"/notes/skin-in-the-game","section":"Notes","date":"2026-10-24","text":"Skin in the game is when you risk yourself to gain the upside, but also I aware of the downside. Everytime you have more upside then downside (asymmetry), it causes troubles in the society. One good example of bad asymmetry is politics, where the ruler does not feel the pain of their actions Employee vs employer Employee loose most of the skin in the game in the long run. The employee does not feel that his acts influences a lot the company. Bad employees will focus more on themselves, harming the company whole result You only see the 3D picture when you do something, when you own the result and the implementation"},{"id":"notes/skin-in-the-games-for-developers#0.0","kind":"note","title":"Skin in the Games for Developers","heading":null,"tags":["career"],"url":"/notes/skin-in-the-games-for-developers","section":"Notes","date":"2026-10-24","text":"benefits of skin in the game for yourself (as a developer and as a professional) eu me tornei um desenvolvedor muito melhor por ter mais skin in the game ownership e responsabilidade em diferentes áreas, me ajudaram a desenvolver diversas soft skills e hard skills de outras áreas e de computação eu senti o peso da responsabilidade de um deploy com bugs senti a pressão de um cliente frustrado todas essas experiências me transformaram em um dev e em um profissional melhor esse é meu relato sobre benefícios próprios quando se tem skin in the game pode ser que tenham mais outros benefícios"},{"id":"notes/small-batches-sizes#0.0","kind":"note","title":"Small Batches Sizes","heading":null,"tags":["productivity","product-development"],"url":"/notes/small-batches-sizes","section":"Notes","date":"2026-10-24","text":"Batch is a way to group some actions/things in a group Prefer to work in small batches. Prefer to release to production a small batch of issues, and small batch of code to avoid creating a lot of regressions or problems. Small batch are easier to review. Prefer work in small batch when writing, write a bit and get early feedback to make sure you are going in the right direction Machine learning algorithm use a small rate of learning (batch), to make sure it converge to the right solution, if the rate is too big it will go in the wrong direction Small batches generate a fast Feedback Loop How to Take Smart Notes WIP Written Principles of Product Development Flow The benefits of small batch sizes Reducing your batch size you reduce the cycle time. Cycle time is the time you take from an issue/task/feature ideation to go to production/live. The small the batch size the small is your cycle time, and fast you improve your product/service. The faster you ship new features The faster you fix bugs. The faster you add improvement Reducing your batch size reduces variability of flow. If one of your sprint has a batch size of 10 issues and the next one has a batch size 60 issues, which one will you deliver faster? If you keep your batch size small you always keep the same flow of delivering. Reducing batch size accelerates feedbacks If you have a small batch size you deliver fast and get"},{"id":"notes/small-batches-sizes#0.1","kind":"note","title":"Small Batches Sizes","heading":null,"tags":["productivity","product-development"],"url":"/notes/small-batches-sizes","section":"Notes","date":"2026-10-24","text":"feedback faster. This will make sure you are building the right thing or find bugs or errors faster. Your errors/failure will also be smaller. Reducing batch size reduces risk It is much safe to deliver a few new items/changes then many of them. Instead of doing one off release of a new feature, try to release it incrementally. Incrementally you can adjust to changes in requirements, you can adjust to errors during the releases, and you can adjust to feedback. Reducing batch size reduces overhead Large batches sizes increases the average number of bugs. If you have 300 open bugs, when you find bug number 301, we need to recheck the other 300 for duplications. For small batch sizes it would have many less number of test to retest if a new bug was found. Large batches reduces efficiency You can think of large chunk of work by an individual is more efficiency, but this is only local as reduce the feedback loops and overall efficiency. The individual could put some wrong assumptions and have to redo most of the work done. Large batches lower motivation and urgency Large batches dilutes responsibility, as if I'm responsible to deliver 1 modules from 100 modules, I feel much less urgency. It also make more probable of someone delaying one of those modules. It takes to much time to see your work in production and get the feedback from user. Large batch size increases cost and schedule"},{"id":"notes/small-batches-sizes#0.2","kind":"note","title":"Small Batches Sizes","heading":null,"tags":["productivity","product-development"],"url":"/notes/small-batches-sizes","section":"Notes","date":"2026-10-24","text":"growth It is hard to estimate schedule and cost for large batch sizes. The batch size is limited by its worst element the batch size will take as long as its worst element, 1 item will delay and make all other cost more. Good infrastructure enables small batches If you have CI/CD with tests and deploys all automated, it makes it easier to handle small batches and do many releases on a daily basis Feature flags can reduce batch size Feature flags let you deliver new feature faster for a few customer, reducing risks, accelerating feedback loops. To reduce batch size reduce scope. Decide to deliver less to deliver faster and in time. To do wait 100% of the requirement to start designing and coding. these requirement will always change a long the way. Converging fast to Solutions Reducing your Batch Sizes"},{"id":"notes/smart-person#0.0","kind":"note","title":"Smart Person","heading":null,"tags":["life"],"url":"/notes/smart-person","section":"Notes","date":"2026-10-24","text":"What is a smart Person? A smart person will master everything in life. From coding, tech, to social skills a smart person will get fit, as this is the best thing you should be doing a smart person will master the mind, using meditation and yoga a smart person will get the best partner and the most attractive one"},{"id":"notes/social#0.0","kind":"note","title":"Social","heading":null,"tags":["zettelkasten","social"],"url":"/notes/social","section":"Notes","date":"2026-10-24","text":"What would be a social Zettelkasten We are social human being, we need to talk to each other for fun and to discuss our ideas As most of our ideas are inside our Zettelkasten Notion if we Open Source them, we could let other leverage our knowledge to build their own. It would be an open knowledge base"},{"id":"notes/social-capital#0.0","kind":"note","title":"Social Capital","heading":null,"tags":["social","crypto"],"url":"/notes/social-capital","section":"Notes","date":"2026-10-24","text":"Social capital is scarce on good social network Humans are status seeker monkeys Breaking changes can unlock new social capital Cubism at Arts 12 tones in music What other social capital do we have? social crypto"},{"id":"notes/software-house#0.0","kind":"note","title":"Software House","heading":null,"tags":["startups","business"],"url":"/notes/software-house","section":"Notes","date":"2026-10-24","text":"Software House is a business model where you develop solutions for our companies. The solutions are tailored per customer needs. The problem with Software Houses is that you always need to do the same work to earn the same money, there are no compound effects. It is also a business that does not scale, as you can't sell the same solution to another customer. One way to reduce the cost of software house is to use Monorepo to try to extract common code in packages and reuse them in new projects, reducing the total cost of the new software. One good point of Software House is that it generates more money upfront, so it can be good to bootstrap without a VC. When working in a SH you can starting looking for a good idea to build your SaaS product. To find good ideas you should read Where good ideas come from SH is like a freelance in a group of people. The incentive of your customer is to reduce the payment for you, and your incentive is to charge more as the project grows. It usually does not have any tests, as soon as you deliver the project you move to the next one. There are no long term incentives. For a better business model check SaaS"},{"id":"notes/software-house-and-the-prisoner-s-dilemma#0.0","kind":"note","title":"Software House and the Prisoner's Dilemma","heading":null,"tags":["startups","game-theory"],"url":"/notes/software-house-and-the-prisoner-s-dilemma","section":"Notes","date":"2026-10-24","text":"Prisoner's dilemma is a classic game theory example where 2 \"individuals\" might not cooperate. The 2 \"individuals\" in the case of this article will be the Software House (SH) and the Customer. This can also be applied to a freelancer and a customer. The cooperation action of the SH will be to deliver software with high quality The betrayal action of the SH will be to deliver software with poor quality The customer cooperation action will be to keep re-contracting the same SH The customer betrayal action will be to contract another SH to reduce the service price of another SH."},{"id":"food-for-thought#0.0","kind":"note","title":"Some Sibelius Food for Thought","heading":null,"tags":["sibelius"],"url":"/food-for-thought","section":"Essays","date":"2026-10-24","text":"I will share some Food for Thought here Articles Youtube Podcast Talks"},{"id":"food-for-thought#1.0","kind":"note","title":"Some Sibelius Food for Thought","heading":"Paid Mentorship/Consulting","tags":["sibelius"],"url":"/food-for-thought","section":"Essays","date":"2026-10-24","text":"Paid Mentorship/Consulting Consulting Startups Mentorship Developers"},{"id":"food-for-thought#2.0","kind":"note","title":"Some Sibelius Food for Thought","heading":"Private Community","tags":["sibelius"],"url":"/food-for-thought","section":"Essays","date":"2026-10-24","text":"Private Community Private Community For adhoc discussions with me just ping me on twitter"},{"id":"notes/stalled#0.0","kind":"note","title":"Stalled","heading":null,"tags":["observability","jobs"],"url":"/notes/stalled","section":"Notes","date":"2026-10-24","text":"transaction.name \"OPENPIX:CHARGE UNIQUE POLLING\" transaction.name \"UPDATE CHARGE STATUS EXPIRED\" transaction.name \"OPENPIX:COMPANYBANKACCOUNT AUTO WITHDRAW\""},{"id":"notes/standing-ovation#0.0","kind":"note","title":"Standing Ovation","heading":null,"tags":["mental-models"],"url":"/notes/standing-ovation","section":"Notes","date":"2026-10-24","text":"The standing ovation model represents how people behaves based on other people for instance: if there is a new fashion item in the market, only a few people will start using before everybody else Other people needs to see 1 or N people using it before start using it. The same goes to clap, you only start clapping after N people are clapping what is your N? your N should be 0; try to start things Thinking Tools Mental Models"},{"id":"notes/startup-mentorship#0.0","kind":"note","title":"Startup Mentorship","heading":null,"tags":["startup","mentorship"],"url":"/notes/startup-mentorship","section":"Notes","date":"2026-10-24","text":"Founding Year Market/Industry/Area/Niche Pain Resolved/Pain Solved Solution/Value Offer Annual Revenue Team and Team Size Describe your Startup Currently, what difficulties and help do you need to build your startup? 1. Teria algum direcionamento pras mentorias? Eu tenho um template que costumo seguir e senti falta de: funded ou bootstrap stack de tecnologia tem CTO? dev interno ou outsourcing? quantos clientes? quantos produtos? Tem backlog estrutura da infra? tamanho do time? How do you see your startup in 10 years? nome da startup linkedin dos sócios"},{"id":"notes/startupops-building-woovi#0.0","kind":"note","title":"StartupOps - Building Woovi","heading":null,"tags":["startup","operations"],"url":"/notes/startupops-building-woovi","section":"Notes","date":"2026-10-24","text":"PreRegistration Opening a Virtual Account Checking who is active what was reused from old codebases? what process that we automated along the way esteira de contratação"},{"id":"notes/startupops-building-woovi#1.0","kind":"note","title":"StartupOps - Building Woovi","heading":"Merged from \"Startup Ops\" (2022-11-14)","tags":["startup","operations"],"url":"/notes/startupops-building-woovi","section":"Notes","date":"2026-10-24","text":"Merged from \"Startup Ops\" (2022-11-14) marketing zero marketing expenses make it clear that it is slides what is not operational work hiring vision strategic backoffice stuff tests software development segurança product development methodology: scrum, cascata, extreme programming feature flag"},{"id":"notes/state-machine#0.0","kind":"note","title":"State Machine","heading":null,"tags":["programming","thinking"],"url":"/notes/state-machine","section":"Notes","date":"2026-10-24","text":"A state machine describes all possibly states for a given business logic or situation They are very useful to model business logic, like ecommerce order status, UI transitions, manager transfer and more."},{"id":"notes/state-machine#1.0","kind":"note","title":"State Machine","heading":"Links","tags":["programming","thinking"],"url":"/notes/state-machine","section":"Notes","date":"2026-10-24","text":"Links Global State"},{"id":"notes/storytelling#0.0","kind":"note","title":"Storytelling","heading":null,"tags":["writing"],"url":"/notes/storytelling","section":"Notes","date":"2026-10-24","text":"The Main in the hole Someone gets in trouble and gets out Pain, dream and fix model Show an audience pain, show the dream without the pain; provide a solution to it"},{"id":"structure/structure/structure/structure/structure#0.0","kind":"note","title":"Structure","heading":null,"tags":["structure"],"url":"/structure/structure/structure/structure/structure","section":"Structure","date":"2022-11-21","text":"You are probably wondering why the Structure note is inside so many structure. \"The paradox of structure is that, whatever its nature, any structure is both enabling and limiting at the same time\" You need to find the right balance of chaos and structure. You should add more structure as you grow, as your company grows. Try to avoid too much structure when it is not needed. A few examples of too much structure You decided to use all design patterns that you learned for an application of 1 endpoint. You created 50 files instead of just 2. You require 2 approvals for a pull request, even if it is a small change. The more structure you add, the slower you move, more bureaucratic you become. Do not create a new file if you have too few lines. Do not create a new folder if you have a few files. Do not create a complex review process if you have a small team. Entropy will keep trying to add more and more structure, so you need to fight it."},{"id":"structure/structure/structure/structure/structure#1.0","kind":"note","title":"Structure","heading":"References","tags":["structure"],"url":"/structure/structure/structure/structure/structure","section":"Structure","date":"2022-11-21","text":"References Systems, man, and the paradox of structure"},{"id":"notes/struggle#0.0","kind":"note","title":"Struggle","heading":null,"tags":["learning"],"url":"/notes/struggle","section":"Notes","date":"2026-10-24","text":"People try to avoid struggle, but you only learn when you struggle. You need to be uncomfortable to learn something new, you won't get all the detail upfront, so you need some time to figure it out, usually takes more time than you wanna"},{"id":"notes/struggle#1.0","kind":"note","title":"Struggle","heading":"Links","tags":["learning"],"url":"/notes/struggle","section":"Notes","date":"2026-10-24","text":"Links Make it stick"},{"id":"notes/struggle-after-studying#0.0","kind":"note","title":"Struggle after studying","heading":null,"tags":["learning"],"url":"/notes/struggle-after-studying","section":"Notes","date":"2026-10-24","text":"I got a new topic to learn. I read 30 articles based on that topic. I've skim reading 2/3 books on that subject. I've watched a few videos on that. Then, I start a new project to test everything that I've \"learned\". I've felt a struggle, like if everything that I thought that I know disappeared."},{"id":"mentorship/study-after-work#0.0","kind":"note","title":"study after work","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/study-after-work","section":"Mentorship","date":"2024-02-26","text":"study after work \"How long should I study after work hours?\" Study during work, focus in a work that you can learn new things"},{"id":"mentorship/study-regardless-your-level#0.0","kind":"note","title":"study regardless your level","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/study-regardless-your-level","section":"Mentorship","date":"2024-02-26","text":"study regardless your level \"What topics should a developer study regardless of their level?\" Concepts, Team Management, Product Management, Devops, Distributed Systems, Decouple Code, Domain-Driven Design, Automated Tests, Programming Logic and Fundamentals, Programming Paradigms, Commit Protocols, CAP Theorem."},{"id":"notes/study-work-backwards#0.0","kind":"note","title":"Study/Work Backwards","heading":null,"tags":["learning","product"],"url":"/notes/study-work-backwards","section":"Notes","date":"2026-10-24","text":"Steve Jobs said do work backwards Instead of starting with a technology and see how to sell to customers Start with customers and see what they need, and what technology fits their needs. That's way that people struggle with learning by theory. We can think of theory as the same as technology We need to work backwards when learning, start with the problem you want to solve. Them find the right theory that you need to learn to solve the problem. instead of learning parsers by no reason, wait until the problem shows up for you. I need to move one package to another, the first thing we need is to understading the imports and exports to make sure we refactor them to the right place. We need a \"parser\" to understand raw text. We also need a subgraph \"graph\" of dependencies to make sure we move the file and all their dependencies together"},{"id":"notes/substack#0.0","kind":"note","title":"Substack","heading":null,"tags":["writing","newsletter"],"url":"/notes/substack","section":"Notes","date":"2026-10-24","text":"My plan is to have at least one per weekly based I wanna cover startups, productivity and development code tips, ideas and thoughts Substack is a platform for writers to build a newsletters It is better than medium as it gives the email list of the subscribers so you don't have lock in It is also better as they only earn money when you earn money (win-win relationship)"},{"id":"notes/substack#1.0","kind":"note","title":"Substack","heading":"Links","tags":["writing","newsletter"],"url":"/notes/substack","section":"Notes","date":"2026-10-24","text":"Links Newsletters"},{"id":"talks#0.0","kind":"note","title":"Talks","heading":null,"tags":["talks"],"url":"/talks","section":"Essays","date":"2023-06-25","text":"This list many talks that I did at conferences and meetups. Check my talks at SpeakerDeck"},{"id":"talks#1.0","kind":"note","title":"Talks","heading":"Intern to CTO","tags":["talks"],"url":"/talks","section":"Essays","date":"2023-06-25","text":"Intern to CTO Slides Watch here DevStackSummit event"},{"id":"notes/tax#0.0","kind":"note","title":"Tax","heading":null,"tags":["economics"],"url":"/notes/tax","section":"Notes","date":"2026-10-24","text":"Amazon Tax Tax is something that you need to pay, that it does not mean that brings values to you You pay taxes to government because it will use this money to improve society. You can think of other thinks as taxes. Amazon taxes the internet to be their infra, 1/2% per service. Poor pay rent (tax) to rich. universe tax: entropy. It tends to get messy over time processing money companies: visa, mastercard, strip logistic is the tax to bring one product from one place to another vicious to control people sugar non-health food porn culto ao corpo incentivo a medicamento quimicos Imagine a tax free society Keynes"},{"id":"notes/tech-lead#0.0","kind":"note","title":"Tech lead","heading":null,"tags":["career","books"],"url":"/notes/tech-lead","section":"Notes","date":"2026-10-24","text":"Peopleware: Productive Projects and Teams Driving technical change: Why People on Your Team Don’t Act on Good Ideas, and How to Convince Them They Should The Mythical Man-Month: Essays on Software Engineering"},{"id":"notes/templates#0.0","kind":"note","title":"Templates","heading":null,"tags":["design","productivity"],"url":"/notes/templates","section":"Notes","date":"2026-10-24","text":"To make things easier to newcomers, and to avoid repeated workflows. We can provide prebuilt templates or let user create their own templates to make their life simpler. Template also help you make design and code more uniform Template generalize a pattern Useful when doing Design and to avoid the Blank Canvas fallacy"},{"id":"testing-concept-frontend#0.0","kind":"note","title":"Testing Concept Frontend","heading":null,"tags":["testing","concept","frontend"],"url":"/testing-concept-frontend","section":"Essays","date":"2026-06-07","text":"You first need to undestand the concept of frontend tests. You should not test the implementation but the behavior You test like the end user For instance, imagine a login screen with email and password inputs and a submit button The test should input the email and the password, then click in the submit button. You should assert the API was called with the inputted data. When using testing library you test against DOM code:"},{"id":"notes/text-formats#0.0","kind":"note","title":"Text Formats","heading":null,"tags":["content","frontend"],"url":"/notes/text-formats","section":"Notes","date":"2026-10-24","text":"Plain Text We have a plain text when we don't have any formatting, all text are the same Rich Text Rich text is when we have formatting for part of the text. When you enable formatting per part of the text, you need to store text as blocks, and each block has it is own styling. Markdown Markdown is another text format, with it is own peculiarities. It has some has predefined \"tags\" where the user applies format based on text my title represent a heading 2 text Markdown is more known by programmers How to store rich text data? draft-js uses an json with blocks information GraphQL Web React Native Rendered? How to present data? You need to process blocks information and output result in html Why we need them? We need them because users want a rich medium to communicate with other (Thinking Tools It can contains: text, image, video, links, mentions, emojis, gifs and more"},{"id":"notes/text-formats#1.0","kind":"note","title":"Text Formats","heading":"Links","tags":["content","frontend"],"url":"/notes/text-formats","section":"Notes","date":"2026-10-24","text":"Links The era of Content Builders NoCode"},{"id":"notes/text-vs-video-vs-audio#0.0","kind":"note","title":"Text vs Video vs Audio","heading":null,"tags":["learning","content"],"url":"/notes/text-vs-video-vs-audio","section":"Notes","date":"2026-10-24","text":"Information Text is low resolution, it let some uncertainty to participants to feel in, it brings more engagement Audio/Video are more high resolution, it has less uncertainty. If you are a beginner video/audio is easier to you to follow because they will have more “complete” information. Text are better to store gists, tl;dr; It is easier to skim and to compose. To make read productive you need to be able to control low and high resolution reading, with and without details. What is better to learn? If you have no knowledge about this subject, try to go for videos/audio first, high resolution to fill most of your basic questions. Then move to a low res medium to gather more knowledge faster, and fill yourself the uncertainty to Make it stick better. Workshop is a mix of high and low res. Explanation and introduction to concepts uses high res videos, and exercises are low res to make your mind feel the gaps of Reality has a lot of details"},{"id":"notes/the-best-way-to-leave-a-job-for-a-developer#0.0","kind":"note","title":"The best way to leave a job for a developer","heading":null,"tags":["career"],"url":"/notes/the-best-way-to-leave-a-job-for-a-developer","section":"Notes","date":"2026-10-24","text":"There are a lot of reasons to leave a job, I won't focus on the reasons in this article. I will focus on the best way to handle the transition from the old job to the new job. There are not much written content about this topic out there. I think the transition should be fair to both sides: the old and the new company. Fair is a simple concept that is hard to describe. How to be fair with the old company? For the old company you need to give enough time to let them hire someone else to be in your place. I think 15 days is a good time frame. You should also transfer your knowledge of the codebase to the ones that you maintain the code. Write down all the implicit knowledge that you have about the codebase and"},{"id":"notes/the-era-of-content-builders#1.0","kind":"note","title":"The era of Content Builders","heading":"What is Content?","tags":["content","nocode"],"url":"/notes/the-era-of-content-builders","section":"Notes","date":"2026-10-24","text":"What is Content? Content is information organized to an audience"},{"id":"notes/the-era-of-content-builders#2.0","kind":"note","title":"The era of Content Builders","heading":"What is a Content Builder?","tags":["content","nocode"],"url":"/notes/the-era-of-content-builders","section":"Notes","date":"2026-10-24","text":"What is a Content Builder? A content builder is a software that you let organize your content in different ways. You can present information in different forms, using text with many formatting (bold), using images, using audio (podcasts), using video, using gif, using tables, using text formatting, you can embed content from other websites like twitter, youtube and so on. Content builder goes from \"simple\" text editor, to note taking app to mobile site nocode solutions."},{"id":"notes/the-era-of-content-builders#3.0","kind":"note","title":"The era of Content Builders","heading":"Before content builder?","tags":["content","nocode"],"url":"/notes/the-era-of-content-builders","section":"Notes","date":"2026-10-24","text":"Before content builder? We have different types of \"documents\" to present information. We have Word/Google Docs to present text information. We have Excel/Google Sheets to present table information We have Powerpoint/Google Slides to do slides. What if I want to add some text/paragraph to my sheet? What if I want to add some slide form to my text document?"},{"id":"notes/the-era-of-content-builders#4.0","kind":"note","title":"The era of Content Builders","heading":"Blocks","tags":["content","nocode"],"url":"/notes/the-era-of-content-builders","section":"Notes","date":"2026-10-24","text":"Blocks We can have basic blocks like simple text and paragraphs We can have links to other pages, blog posts or people we can have media (image, embeds, audio, video)"},{"id":"notes/the-era-of-content-builders#5.0","kind":"note","title":"The era of Content Builders","heading":"Working with Blocks","tags":["content","nocode"],"url":"/notes/the-era-of-content-builders","section":"Notes","date":"2026-10-24","text":"Working with Blocks You can copy and paste text, single blocks or multiple blocks You can reorder blocks, you can edit and duplicate them You can transform one block into another"},{"id":"notes/the-era-of-content-builders#6.0","kind":"note","title":"The era of Content Builders","heading":"Layouts","tags":["content","nocode"],"url":"/notes/the-era-of-content-builders","section":"Notes","date":"2026-10-24","text":"Layouts Layout are blocks that arrange blocks inside a screen They are useful when building a website Most website can be built with predefined layout patterns"},{"id":"notes/the-era-of-content-builders#7.0","kind":"note","title":"The era of Content Builders","heading":"Interactive Blocks","tags":["content","nocode"],"url":"/notes/the-era-of-content-builders","section":"Notes","date":"2026-10-24","text":"Interactive Blocks ObservableHQ let you have interactive blocks to document and play with data visualization You could embed some code playground in your content to make them more interessant"},{"id":"notes/the-era-of-content-builders#8.0","kind":"note","title":"The era of Content Builders","heading":"Examples of Content Builders?","tags":["content","nocode"],"url":"/notes/the-era-of-content-builders","section":"Notes","date":"2026-10-24","text":"Examples of Content Builders? Fluid Framework Notion Dropbox Paper Mdx Airtable Observable HQ NoCode in general WebFlow Canva Wix Building Blocks of Content Builder Similar to building blocks for SaaS We can have many building blocks when creating content. WYSIWYG what you see is what you get A Digital Garden is an example of a content builder where you build and modify the blocks. You decide which blocks to implement based on what your needs. It is the curation of your content and output. If you need to show some code you need a block to handle it properly. Using the right blocks can make your Writing more interesting to read This blocks can be thought as tools for thinking"},{"id":"notes/the-era-of-content-builders#9.0","kind":"note","title":"The era of Content Builders","heading":"Links","tags":["content","nocode"],"url":"/notes/the-era-of-content-builders","section":"Notes","date":"2026-10-24","text":"Links Abstractions Writing"},{"id":"notes/the-instant-payment-stack#0.0","kind":"note","title":"The Instant Payment Stack","heading":null,"tags":["fintech","payments","pix"],"url":"/notes/the-instant-payment-stack","section":"Notes","date":"2026-10-24","text":"Credit cards are the way to go for payment Imagine if you could recreate the credit card with a new stack stop limiting yourself use the product conta subconta marketplace split parcelamento antecipacao a vista paypal"},{"id":"notes/the-journey-the-process#0.0","kind":"note","title":"The Journey / The Process","heading":null,"tags":["audience","startups"],"url":"/notes/the-journey-the-process","section":"Notes","date":"2026-10-24","text":"The journey the process is also a product You can share your process over your network to build your audience that will buy the final process or even courses of how to do it"},{"id":"notes/the-nonesuch-beast#0.0","kind":"note","title":"The Nonesuch Beast","heading":null,"tags":["product","software"],"url":"/notes/the-nonesuch-beast","section":"Notes","date":"2026-10-24","text":"Non-coders will provide many requirements that are simple by itself, but in combination they can't exist. Instead of trying to solve all the problems with specific features We should provide low level building blocks (Where good ideas come from Building Block that let user compose to build more complex features. Simple building blocks make it easy to learn and to use tools. Irreducible complexity is when you can't reduce complexity of all requirements, you need to understand that you need to live with tradeoffs, and choose them based on your current requirements. What should you Build Next?"},{"id":"notes/thinking-tools#0.0","kind":"note","title":"Thinking Tools","heading":null,"tags":["thinking","learning"],"url":"/notes/thinking-tools","section":"Notes","date":"2026-10-24","text":"We need more tools to make our thinking better Mental Models is one of the tool in our toolbox Note Taking (Bidirectional note taking) is another tool. Can we make people remember more? Exponential scheduling testing of knowledge using flag cards or simple questions Spaced repetition Providing few short questions a long the away of vídeo to increase retention Similar to micro learning Simple question show the user is not paying enough attention Adobe Sketch Figma Expensive to develop new mediums for thought but easy to copy Adobe/Sketch/Figma provides a \"blank\" canvas, where you can interact using basic building blocks like artboards, basic shapes. We are now thinking in blocks The era of Content Builders Instead of just using writing or image, we think using blocks. Blocks are our new medium of thought. We have iPython notebooks that can be think as executable notebooks Mdx is also essays code Reader can modify parameters to test, to learn, and to improve their understanding Dynamic is better than static to learn Good tools is a byproduct or working on serious problems Camomila média is when someone expands the “ideas” of what you can do with the medium Instead of a simple essay we can have dynamic/interactive essays Who are the one pushing the médiums? How can we push writing, how can we push music? How can we push software? How can we push digital garden? How can we push"},{"id":"notes/thinking-tools#0.1","kind":"note","title":"Thinking Tools","heading":null,"tags":["thinking","learning"],"url":"/notes/thinking-tools","section":"Notes","date":"2026-10-24","text":"hardware? Simple things like flash cards can have profound benefits in long term NoCode could be a new medium for thinking thoughts. NoCode let you build powerful things with easy of drag and drop interface Excel as a thinking tool, as you can put some number there and let some insights happen there Instead of notebooks, why not nocodebooks? Google is a thinking tools, as it helps us find new information based on our queries."},{"id":"notes/time-preference#0.0","kind":"note","title":"Time Preference","heading":null,"tags":["economics","bitcoin"],"url":"/notes/time-preference","section":"Notes","date":"2026-10-24","text":"Bitcoin Time preference tldr: If you have 8 hours to catch fishes, do you use the 8 hours to catch fish or do you use only 6 hours and create a net to catch more fish? If you do the latter you have a low time preference, it means you value your future more than your present For developers this would be like, do you use part of your development hours to refactor and improve your code? If you do freelance you value for the present than the future If you work in a company/product/SaaS over a long period of time you prefer future over present A high time preference values present and immediate future A low time preference values futher future over present What's your time preference? Time preference (long-term orientation) is an economy concept that measure how an individual values the present over future. A high time preference means that you value more the present then the future. And a low time preference means that you value more the future over the present. A simple example If you have 8 hours to catch fishes, do you use the 8 hours to catch fish or do you use only 6 hours and create a net to catch more fish with the rest of 2 hours? If you do the latter you have a low time preference, it means you value your future more than your present Money A sound money turns more people to have a low time preference, as the value of the money increases over time, you would prefer to save"},{"id":"notes/time-preference#0.1","kind":"note","title":"Time Preference","heading":null,"tags":["economics","bitcoin"],"url":"/notes/time-preference","section":"Notes","date":"2026-10-24","text":"money instead of spending. Deferred consumptions. Our current money model based on inflation make people spend more as the money devalues overtime. Fitness The process to get fit takes a \"long\" time. You only get fit if your time preference for this is low enough. You choose to spend your time doing exercises that feel hard to you, but you only get the benefits in the long run. Health We can apply the same concepts to health, you avoid consuming junk food to have a better life in the future. Sofware House vs SaaS Software House usually has a high time preference as it prefer to deliver bad/medium quality code to the customer, deliver the product and get a large chunk of money, and move to the next project. The problem with this model is that SH always need to do the same work to get the same amount of money. SaaS product charges a much small subscription per customers, but it earns this amount for long periods of time. This also make sure the SaaS company will keep delivering value to current and new customers to keep them paying for the product, the incentives are aligned, it is a win-win relationship. Marriage Marriage is a long term. If you don't want to spend the rest of your life if the person you are married, you should get a divorce. Marriage gets better in the long run as you get used to each other and trust more each other. Habits Habits is what you do in a daily basis"},{"id":"notes/time-preference#0.2","kind":"note","title":"Time Preference","heading":null,"tags":["economics","bitcoin"],"url":"/notes/time-preference","section":"Notes","date":"2026-10-24","text":"atomic habits, exponential, long run, time preference"},{"id":"notes/tipping-points#0.0","kind":"note","title":"tipping points","heading":null,"tags":["career","life"],"url":"/notes/tipping-points","section":"Notes","date":"2026-10-24","text":"first computer at home first internet access first programming enrolled in development and programming system technical course mathematics olympcisc (Brazil OBMEP) seen the first USP people passing in the USP entrance exam doing ciencies without border program (study abroad on US) doing cientific initiation presenting paper in national and international conference first international travel doing master dropping master summer startup job trying to creating own startup founding entria first open source contributions creating react sp meetup/community doing learning in public first startup from zero to one first software house project first saas project first product market fit first unicorn"},{"id":"notes/tips-and-tricks#0.0","kind":"note","title":"Tips and Tricks","heading":null,"tags":["productivity"],"url":"/notes/tips-and-tricks","section":"Notes","date":"2026-10-24","text":"Small tips and tricks can leverage your productive when using tools. Try to learn tips to master your IDE, your Terminal, your text editor, your note taking app, your operational system it sounds silly, but this is all about tiny details that matters Most people know Undo and Redo. A few people know how to go back and forward in navigation inside app Notion and Webstorm uses ctrl+ and ctrl+ to be able to go back and forth so you can move around and avoid losing context Learn keyboard shortcut to move fast Mouse is good, but it is slow as you need to navigate the \"whole\" screen the keyboard goes directly to where you wanna go"},{"id":"notes/tips-and-tricks#1.0","kind":"note","title":"Tips and Tricks","heading":"Links","tags":["productivity"],"url":"/notes/tips-and-tricks","section":"Notes","date":"2026-10-24","text":"Links Index"},{"id":"notes/tips-and-tricks#2.0","kind":"note","title":"Tips and Tricks","heading":"References","tags":["productivity"],"url":"/notes/tips-and-tricks","section":"Notes","date":"2026-10-24","text":"References"},{"id":"notes/today-1-august#0.0","kind":"note","title":"Today - 1 august","heading":null,"tags":["programming","testing"],"url":"/notes/today-1-august","section":"Notes","date":"2026-10-24","text":"How have you been preparing for the code You are about to write? Smaller changes leads to higher productivity What constraints have you chosen? Why can’t we use 4G in flights? Common sense is not so common, Fixing a bug is aligning the code with the facts. A bug happens when you take an assumption for a fact Guessing is a waste of time, A test must change only if the behaviour it verifies changed Test behavior not implementation"},{"id":"notes/trust#0.0","kind":"note","title":"Trust","heading":null,"tags":["game-theory","economics"],"url":"/notes/trust","section":"Notes","date":"2026-10-24","text":"Trust is when one person trust another person. We can use Game Theory to model trust behavior among agents. When we trust we can avoid some transactions costs. Uber/AirBnb only works because they made trust works in the scenarios. Uber makes safe and possible to you get inside a car of a \"strange\" and reach your destiny without trouble. AirBnb let you stay in a house of a \"strange\" in a safe way."},{"id":"notes/tweet-drafts#0.0","kind":"note","title":"Tweet drafts","heading":null,"tags":["twitter","programming"],"url":"/notes/tweet-drafts","section":"Notes","date":"2026-10-24","text":"a programmer has a relationship with the machine The better you get as a programmer the closer you get to the machine Programming is about frustration and allure Programming is the art of learning from failure homo faber, the tool-makers; homo sapiens the knowing ones; and two additions I would coin as homo sociales the social ones; and homo affectus the ones who feel Watch out what you wish for What would please a bot? High tolerance for failures"},{"id":"notes/tweet-engagement#0.0","kind":"note","title":"Tweet Engagement","heading":null,"tags":["twitter","audience"],"url":"/notes/tweet-engagement","section":"Notes","date":"2026-10-24","text":"Growth Loops Standing Ovation How to make your audience engage? Use a question When you use a question in your tweet, you are basically asking people (your audience) to answer it People care about their name, their opinions and everything that they think are their own. Most people don't start a discussion or tweet because of the Standing Ovation model, so when tweeting give voice to them to engage and show their opinions. Use an image/video/gif or audio text is low resolution cold medium (Hot Cold Media) sometimes text is not enough to conceive the information because it needs more context to make it sense of it. Use buzz word buzz word (hashtags) are a great way to find your content bots can retweet you based on some hashtags you tweet will show up when people search this hashtag Tag some people when you tag some people (not in the begin of the tweet because it will restrict the tweet to only people that follow you and the other people) your tweet will also reach their audience Do not tag too many people, and not always the same people, avoid spamming, use with caution. External Links Make sure external links produces a good social image (og) to improve engagement. Share Make sure to share your tweet in many places (slack, discord, facebook and other) Improve your reach Relink and Retweet When doing a new tweet, try to find related tweets of yours, and relink them in threads"},{"id":"notes/tweet-engagement#0.1","kind":"note","title":"Tweet Engagement","heading":null,"tags":["twitter","audience"],"url":"/notes/tweet-engagement","section":"Notes","date":"2026-10-24","text":"Threads A good thread can improve the value of individual tweets A group of tweets has more values of all individual tweets Funny People like funny things Meme Bring image, and gifs to get a hot funny medium"},{"id":"notes/twitter#0.0","kind":"note","title":"Twitter","heading":null,"tags":["twitter","social"],"url":"/notes/twitter","section":"Notes","date":"2026-10-24","text":"Twitter is the social network for your mind, where your share your ideas/projects and thoughts. The basic block of twitter is a tweet that has a very short limit so you need to be twitter also has thread where you can use to explain a train of thought"},{"id":"notes/twitter#1.0","kind":"note","title":"Twitter","heading":"Links","tags":["twitter","social"],"url":"/notes/twitter","section":"Notes","date":"2026-10-24","text":"Links Community d Share"},{"id":"notes/understanding#0.0","kind":"note","title":"Understanding","heading":null,"tags":["learning"],"url":"/notes/understanding","section":"Notes","date":"2026-10-24","text":"Instead of stop when you find the first answer, try to solve in different ways Do not fool yourself, if you can’t implement you don’t know If you can’t explain or demonstrate to someone else you don’t know Nothing beat real experience See the reality, play with reality Summary are cached thoughts Understanding is not binary, levels of understanding Focus, go closer to understand"},{"id":"notes/undo#0.0","kind":"note","title":"Undo","heading":null,"tags":["productivity"],"url":"/notes/undo","section":"Notes","date":"2026-10-24","text":"When going back and forth in files, the undo equivalent is the way to go back to the last file you visited In notion you can use ctrl+ to go back and ctrl+ to move forward same in webstorm"},{"id":"notes/undo#1.0","kind":"note","title":"Undo","heading":"Links","tags":["productivity"],"url":"/notes/undo","section":"Notes","date":"2026-10-24","text":"Links Productivity"},{"id":"mentorship/value-over-internship#0.0","kind":"note","title":"value over internship","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/value-over-internship","section":"Mentorship","date":"2024-02-25","text":"value over internship \"How can I effectively demonstrate my value and skills during the internship to maximize the chances of a job offer at the end of it?\" Work as hard as you can Work more hours Do more than they asked you Understand your company, your company's products and the business. How they make money. How can you contribute to the company, to make more money, to reduce costs, to grow faster, to bring more users, to reduce churn, to make onboarding easy. Learn everything that you can Do not reduce yourself as an intern, try to solve harder problems Ask for challenges Do not limit yourself to your job title, only frontend, only backend. Learn it all. Contribute it all. Bring new ideias with RFC, POCs. Reduce the work of your Boss Deliver everything with high quality."},{"id":"waiting-somebody#0.0","kind":"note","title":"Waiting somebody","heading":null,"tags":["advice"],"url":"/waiting-somebody","section":"Essays","date":"2022-11-22","text":"Most people keep waiting somebody else to figure something out. Developers wait the product manager to tell them what to do. You are waiting someone in your team to discuss something. You think you are \"blocked\", however you are not. You are blocking yourself because it is easier. You don't want to take responsiblity. You don't want to make a mistake or be wrong. Here my advice for you, stop waiting and start doing. The world is for the ones who take action. Nobody will fix your problems for you."},{"id":"notes/wasted-potential#0.0","kind":"note","title":"Wasted Potential","heading":null,"tags":["career"],"url":"/notes/wasted-potential","section":"Notes","date":"2026-10-24","text":"most devs are working on easy projects without even reaching their full potential if you have an \"easy\" job you are probably not using your full potential, you are just wasting your time. Bright people not working in hard enough problems bright people with high time preference"},{"id":"mentorship/what-are-the-biggest-pitfalls-in-the-field-of-development#0.0","kind":"note","title":"what are the biggest pitfalls in the field of development?","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/what-are-the-biggest-pitfalls-in-the-field-of-development","section":"Mentorship","date":"2024-02-27","text":"what are the biggest pitfalls in the field of development? not understand what you are doing"},{"id":"mentorship/what-makes-a-good-developer#0.0","kind":"note","title":"what makes a good developer?","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/what-makes-a-good-developer","section":"Mentorship","date":"2024-02-27","text":"what makes a good developer? knowledge experience"},{"id":"notes/what-people-get-wrong-about-relay#0.0","kind":"note","title":"What people get wrong about Relay","heading":null,"tags":["relay","graphql"],"url":"/notes/what-people-get-wrong-about-relay","section":"Notes","date":"2026-10-24","text":"Node interface Connections Data components fragments vs queries where the data is stored (not in graphql operation, but in relay store) how to understand store"},{"id":"mentorship/what-should-i-focus-on-per-role#0.0","kind":"note","title":"what should i focus on per role","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/what-should-i-focus-on-per-role","section":"Mentorship","date":"2024-02-26","text":"what should i focus on per role \"What should i focus on per role? for example, in front i have to focus only in one framework?\" No, you should learn concepts instead of implementations/frameworks. Learning the concepts and studying topics in differents languages helps you with the knowledge invariance."},{"id":"mentorship/what-should-i-focus-on-per-role#1.0","kind":"note","title":"what should i focus on per role","heading":"References","tags":["advice","mentorship","questions","async"],"url":"/mentorship/what-should-i-focus-on-per-role","section":"Mentorship","date":"2024-02-26","text":"References Learn Concepts"},{"id":"notes/what-should-you-build-next#0.0","kind":"note","title":"What should you Build Next?","heading":null,"tags":["product","startups"],"url":"/notes/what-should-you-build-next","section":"Notes","date":"2026-10-24","text":"bug/feature/refactor A feature is a new capability to the software You add features when your software can’t handle some users use case Improvement: improvements are interactions to make an existing feature better. It can make the feature easier to use. It can make the feature faster to use. Bug: a bug happens when a feature is implemented and not tested properly, or when some edge cases were not considered. Refactor: it is when we improve the code structure without changing their behavior First principles first Instead of build a new feature for each user wish, try to understand the core problem they have in their workflows. Prefer build low level building blocks features that can be reused in many workflows Try to solve a set of problems instead just one use case. Prefer a more generic/extensible feature than a much more specific Do not build for a single user, build for a group of them Basecamp Shape Up Principles of Product Development Flow You should decide on what to work on based on the cost of delaying it. How is the cost of delaying fixing this bugs? How many users are affected by this bug? Is this bug generating inconsistent data? Is this bug part of core user workflows? Can user use the product even with this bug? How many customer supports ticket will be open because of this bug? How is the cost of delaying this refactor? How many more hours developers Will spend"},{"id":"notes/what-should-you-build-next#0.1","kind":"note","title":"What should you Build Next?","heading":null,"tags":["product","startups"],"url":"/notes/what-should-you-build-next","section":"Notes","date":"2026-10-24","text":"before this refactor? How long will take this refactor? How this refactor affects the other devs? What is the risks of this refactor? Can this refactor be done incrementally? How is the cost of delaying this improvement? How many users will perceive this improvement? How this improvement will affect users? How many users uses the feature that wil be improved? How is the cost of delaying this feature? How many users are waiting this feature? How this feature helps sales team to sale more? Is this feature for any user or high usage users? Will this feature improve usage and engagement? The Nonesuch Beast"},{"id":"mentorship/what-to-do-after-receiving-many-rejections-in-job-interviews#0.0","kind":"note","title":"what to do after receiving many rejections in job interviews?","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/what-to-do-after-receiving-many-rejections-in-job-interviews","section":"Mentorship","date":"2024-02-27","text":"what to do after receiving many rejections in job interviews? improve github improve open source improve code challenge write blog posts, articles go to events network (go to meetups, talk to people) listen feedback, ask for feedback"},{"id":"mentorship/what-to-expect-from-a-tech-leader#0.0","kind":"note","title":"what to expect from a tech leader","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/what-to-expect-from-a-tech-leader","section":"Mentorship","date":"2024-02-25","text":"what to expect from a tech leader \"What are the main behaviors that you evaluate for a tech leader?\" Be able to lead a team Be able to lead a product Excel in hard skill Great in soft skills, communication Good in system design, RFC, POC, software development process Ensure Quality Owner and Operations of a product Provide resume and updates to team and upper management"},{"id":"mentorship/what-to-expect-from-a-tech-leader#1.0","kind":"note","title":"what to expect from a tech leader","heading":"References","tags":["advice","mentorship","questions","async"],"url":"/mentorship/what-to-expect-from-a-tech-leader","section":"Mentorship","date":"2024-02-25","text":"References What is expected from a Tech Lead?"},{"id":"mentorship/what-to-expect-from-seniors#0.0","kind":"note","title":"what to expect from seniors","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/what-to-expect-from-seniors","section":"Mentorship","date":"2024-02-25","text":"what to expect from seniors Autonomy Agency Being able to go from product/user requirements to production Excel in hard skills Excel in soft skills, communication, RFC Good in system design, RFC, POC, software development process High Quality Be able to trust they Experience in a variaty of topics Know how to solve a lot of different problems Explain clear the tradeoffs of solutions They can design system to scale without a lot of technical debt They can reduce scope and control complexity They can mentor and manage juniors They do code review to ensure codebase quality and patterns They build tooling to make coding easier They can work in long tasks They can handle uncertainity They can interact with other teams or other companies and consume APIs with few documentation."},{"id":"notes/what-you-do-is-who-you-are#0.0","kind":"note","title":"What you do is who you are","heading":null,"tags":["culture","books"],"url":"/notes/what-you-do-is-who-you-are","section":"Notes","date":"2026-10-24","text":"The culture is what you do “I must believe there will be a bigger payoff from the relationship in the future than whatever I can get by betraying you now” Long term is about not betraying, it is about believing in something “In any human interaction, the required amount of communication is inversely proportional to the level of trust” Dress code can change behavior This is why kids are required to use uniform at schools “Cultures are shaped more by invisible than the visible What you measure is what you value Netlifx ceo removed all DVD guys from meeting to focus on streaming services The way you treat outsiders will leak back into your organization Heisenberg uncertainty Principle of Management The act of trying to measure your culture changes the result"},{"id":"mentorship/when-to-change-jobs#0.0","kind":"note","title":"when to change jobs","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/when-to-change-jobs","section":"Mentorship","date":"2024-02-26","text":"when to change jobs \"How I can decide when is the correct time to change my job? I think that is when I dont learning more at my actual job...\" You should change jobs when you are not learning anymore, or when you are not earning as much as you should. You should also change jobs when you don't believe in your company mission. You should also change job if your job is too easy. You should change jobs when you can't grow."},{"id":"notes/where-good-ideas-come-from#0.0","kind":"note","title":"Where good ideas come from","heading":null,"tags":["books","ideas"],"url":"/notes/where-good-ideas-come-from","section":"Notes","date":"2026-10-24","text":"Where good ideas come from is a book of how to come up with good ideas. Good ideas is based on other ideas. You can think of an idea is a building block for your next ideas. Some ideas are good, but no ready yet. There are some missing pieces to make it work. For Uber work well, we need a good mobile phone hardware with GPS, we also need a good broad brand connection. For youtube we need the digital camera and some internet connection. Some ideas/projects fail because there are some building blocks that are not mature anymore The Nonesuch Beast is about combination of simple requirements and low level building blocks."},{"id":"notes/why-am-i-learning-css#0.0","kind":"note","title":"Why am I learning CSS?","heading":null,"tags":["frontend","learning"],"url":"/notes/why-am-i-learning-css","section":"Notes","date":"2026-10-24","text":"If you are used to what I share on my blog posts, newsletter and twitter you would be surprised that I \"go back\" to learn the basics of CSS man, you can do AST codemods stuff, why learn CSS? you can train machine learning algorithms to perform well on testing data, why learn CSS? The thing is, all my other knowledges does not matter for my CSS skills o/ I'm learning CSS to master a piece of knowledge that I don't have yet. I'm not afraid to go back as a beginner and start learning from the basics one. I'm also learning design at the same time, so I can mix and match my skills. CSS CSS Practice"},{"id":"notes/why-do-people-stay-poor#0.0","kind":"note","title":"Why do people stay poor?","heading":null,"tags":["economics"],"url":"/notes/why-do-people-stay-poor","section":"Notes","date":"2026-10-24","text":"people stay poor because you \"choose\" low paying jobs people stay poor because they don't have or buy assets that increase in value over time, or generate value over time while you are sleeping there are a threshold of poverty, people stay people because of lack of opportunities"},{"id":"notes/win-your-team#0.0","kind":"note","title":"Win your team","heading":null,"tags":["leadership","career"],"url":"/notes/win-your-team","section":"Notes","date":"2026-10-24","text":"If does not matter you implemented the best improvement in your infrastructure if nobody is using it o/ You need to win your team You need to educate your team You need to teach your team You need to spread the knowledge You need to make it easy You need to make it fast"},{"id":"notes/woovi-summit-talk#0.0","kind":"note","title":"Woovi summit talk","heading":null,"tags":["talks","startup"],"url":"/notes/woovi-summit-talk","section":"Notes","date":"2026-10-24","text":"growth integration link afiliado partners hiring scaling test plan dog fooding"},{"id":"mentorship/work-study-life-balance#0.0","kind":"note","title":"work study life balance","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/work-study-life-balance","section":"Mentorship","date":"2024-02-25","text":"work study life balance \"What strategies do you suggest for balancing ongoing technology learning with the demands of work and personal life?\" The best way is to align your work with what you want to learn. For instance, if you want to study more React, the best way is to get a job that uses React every day. You will get paid to study and learn what you are looking for. If you can't do that in your current job, you have some options. You can introduce this new technology in your work if this makes sense. Write an RFC (Request For Comments) showing all the benefits of this new technology for the company current tech stack. Do a simple POC (Proof of Concept). You can get another job that uses this new tech. You can get a freelancer to learn more this new tech. You just need to be able to learn fast until they figure it out that you don't have everything figure it out. To balance your work with your life, you need to work in something that you believe. You need to optimize and automate the work, so you can be able to be very productive and work for 6/8 hours. Working extra time can be useful in the beginning of the carrer so you can grow faster. Always work hard for yourself. Every time you are working on something more hours, and you are learning a lot, it is good for your carrer and for your company."},{"id":"mentorship/work-study-life-balance#1.0","kind":"note","title":"work study life balance","heading":"References","tags":["advice","mentorship","questions","async"],"url":"/mentorship/work-study-life-balance","section":"Mentorship","date":"2024-02-25","text":"References Scaling Engineering Teams via RFCs: Writing Things Down"},{"id":"mentorship/work-visibility#0.0","kind":"note","title":"work visibility","heading":null,"tags":["advice","mentorship","questions","async"],"url":"/mentorship/work-visibility","section":"Mentorship","date":"2024-02-25","text":"work visibility \"Are there specific strategies to increase the visibility and recognition of my work within the company where I will be interning?\" It is the same way that you get your work visible outside your company. You use Learn in public. You share all the work you are doing in public, in public channels, in articles, at open source. You write down everything you are contributing to the company, brag document. Your manage can forget what you did, but you should not. You should let know how you are contributing to the company. You need to prove that your work contributions are moving the metrics that matters. Does your work reduces costs? increase revenue? simplify onboarding? reduces CACs make team ship faster? \"It's better to appear honest than to be honest\" You need to market your work. Only work or coding is not enough, you need to demo, present to other areas."},{"id":"mentorship/work-visibility#1.0","kind":"note","title":"work visibility","heading":"References","tags":["advice","mentorship","questions","async"],"url":"/mentorship/work-visibility","section":"Mentorship","date":"2024-02-25","text":"References Learn in Public Brag Documents Becoming a Go To person gets you"},{"id":"notes/workshop#0.0","kind":"note","title":"Workshop","heading":null,"tags":["learning","teaching"],"url":"/notes/workshop","section":"Notes","date":"2026-10-24","text":"Workshop is a set of practical exercises so users really \"taste\" how to solve something They need to struggle to solve at first to improve learning retaintion Zoom has a breakout room divides the people of a workshop in many rooms so they can discuss in smaller groups while solving exercises Kent has 3 types of workshops set of exercises fill parts of a complete app build an app incrementally Each exercise can have an extra credit for advanced students You need to cap to 30/40 people per workshop so you can have time to help all students, more active learning instead of passing learning of a webinar Course Platform"},{"id":"writing#0.0","kind":"note","title":"Writing","heading":null,"tags":["writing"],"url":"/writing","section":"Essays","date":"2022-11-21","text":"I use writing to scale myself. Writing let me structure my thoughts and ideas. Writing is how I communicate with the world. Writing transforms the implicit into explicit. Writing in public improves your personal SEO. Writing is essential in the async communication workplace if you want to avoid being 24/7 in meetings. Everybody has something to write about it. Everybody has something to share with the world."},{"id":"notes/writing-hacking#0.0","kind":"note","title":"Writing Hacking","heading":null,"tags":["writing"],"url":"/notes/writing-hacking","section":"Notes","date":"2026-10-24","text":"Hacking is usually associated with software. Where someone, aka hacker, get into a system without authorization. However we can use the term hacking in a lot of other situations. And I think we can hack most of the things and situations out there."},{"id":"notes/writing-study#0.0","kind":"note","title":"Writing study","heading":null,"tags":["writing"],"url":"/notes/writing-study","section":"Notes","date":"2026-10-24","text":"“I think I did pretty well, considering I started out with nothing but a bunch of blank paper.”, Steve Martin Whatever our topic, we have a purpose, a certain audience, a particular stance, a genre, and a medium to consider and often as not, a design. jason fried It would be a writing course. Every assignment would be delivered in five versions: A three page version, a one page version, a three paragraph version, a one paragraph version, and a one sentence version."},{"id":"notes/wrong-hiring-strategy#0.0","kind":"note","title":"Wrong Hiring Strategy","heading":null,"tags":["hiring","startups"],"url":"/notes/wrong-hiring-strategy","section":"Notes","date":"2026-10-24","text":"Let's define P(x) as the probability of find a candidate that knows the X technology. P(React) is the probability of a candidate to know React P(Node) is the probability of a candidate to know Node We can use the sum/product rule to understand how more and more items in the job posting affect the search"},{"id":"notes/you-can-do-anything-but-you-can-t-do-everything#0.0","kind":"note","title":"you can do anything, but you can't do everything","heading":null,"tags":["focus","startup","writing"],"url":"/notes/you-can-do-anything-but-you-can-t-do-everything","section":"Notes","date":"2026-10-24","text":"review ou reduce the scope, of what are you working on, You reduce the scope of what are you working on, This is the Bayes’ Theorem. You should change your prior knowledge based on new information. boa analogia ao bayes 1. Achei estranha uma construção frasal: Para mim ler com with fez mais sentido: You focus on customer-requested features that aligned if your vision. You focus on customer-requested features that aligns with your vision. De resto muito bom o artigo 1. bom artigo acho que seria legal aprofundar um pouco no bayes' theorem, mostrando o pq que tem a ver e etc, mas talvez tiraria o foco do artigo link para bayes' theorem 1. You reduce the scope, of what are you working on, until you can deliver some value to your customer. \"You reduce the scope that you are working on\" You focus on customer-requested features that aligned if your vision. \"...that are aligned with your vision\" gostei do story telling \"We decided to build 10 features at the same time, instead of focusing on just one and iterating and making it perfect. In the end, we have 10 features not so good. We decided to do very specific features for a few customers instead of building what most customers wanted. We were focusing more on customers that complained a lot in customer support, instead of customers that brought more revenue.\" Isso aqui ficou muito bom! 1. “pequenas empresas perdem muito tempo"},{"id":"notes/you-can-do-anything-but-you-can-t-do-everything#0.1","kind":"note","title":"you can do anything, but you can't do everything","heading":null,"tags":["focus","startup","writing"],"url":"/notes/you-can-do-anything-but-you-can-t-do-everything","section":"Notes","date":"2026-10-24","text":"arrumando bugs que só 0.001% das pessoas acharam enquanto as big tech ignoram bugs grandes enquanto desenvolvem grandes feature” \"You can do anything, but you can't do everything\" remete tbm à questão da prioridade de tempo, onde o que é mais importante pra você e o que pode esperar. David Allen, com Getting Things Done, tá no meu to read list. 1. Muito bom o artigo Fez bastante sentido pra mim You can do anything, but you can't do everything Precisava ouvir essa frase Acabei de ler, eu acho que a parte do teorema de Bayes tá meio desnecessária Bayes não é só sobre mudar crenças com evidência nova, é sobre como e quanto fazer isso Acho que tem formas mais intuitivas e menos \"místicas\" pra quem não já conhece de explicar o conceito Eu também acho que o seu exemplo de foco pode ficar um pouco confuso Aprender sobre startups é um espaço bem grande! Dá pra perder foco bem facilmente aí no meio Eu acho que você na real tá perdendo uma boa oportunidade aí de explicar que foco não precisa ser sobre fazer ou estudar uma coisa só, mas sim sobre estudar com coerência e clareza de objetivo Building software for others is easy, as you just need to deliver what they say to you. You don't need to think about product development. sugestão: colocar mais hiperlinks Bayes’ Theorem Minimum Viable Product. Esse texto fala sobre a importância do foco tb A verdade é que focar não é algo fácil de se"},{"id":"notes/you-can-do-anything-but-you-can-t-do-everything#0.2","kind":"note","title":"you can do anything, but you can't do everything","heading":null,"tags":["focus","startup","writing"],"url":"/notes/you-can-do-anything-but-you-can-t-do-everything","section":"Notes","date":"2026-10-24","text":"fazer. Primeiro porque cognitivamente somos feitos para hedgear nossas apostas e assim aumentar nossas chances de sobrevivência. Segundo porque muitos desconhecem a história das empresas que realmente escalam. Terceiro porque tendemos a temer os competidores e achar que é melhor conquistar tudo de uma vez. Quarto, porque mesmo que eu acredite no foco, eu preciso convencer todo o meu time e as vezes investidores também. E por fim, muitas vezes não temos tempo nem dinheiro suficiente para sobreviver, e aí a única saída é vender para qualquer um que aparecer. May talk about Planning and goals, I understand the example and context, but the focus needs to be aggregated to some other things. If you are focused in wrong things you don´t get much success. Maybe mentoring be interesting at this point. Think about the utility and needs Prospect theory and expected utility hypothesis The expected utility hypothesis serves as a reference guide for decisions when the return is uncertain. The theory recommends which option rational individuals should choose in a complex situation, based on their risk appetite and preferences. So, you got some risk e take some decision with some racional thinking. In another way, general people have the decision affected by the perspective, for example: Prospect theory suggests that; When faced with a risky choice leading to gains agents are risk averse,"},{"id":"notes/you-can-do-anything-but-you-can-t-do-everything#0.3","kind":"note","title":"you can do anything, but you can't do everything","heading":null,"tags":["focus","startup","writing"],"url":"/notes/you-can-do-anything-but-you-can-t-do-everything","section":"Notes","date":"2026-10-24","text":"preferring the certain outcome with a lower expected utility. People are loss averse and prefer to remain in an inert state, this works as an internal risk policy and a reactive mental defense state. Changing mental focus requires rational, deliberative, and logical decision making. With human evolution, our body was shaped to pulp energy. Although often a person is guided with advice or suggestion about their activities and focus, change needs a prior non-intuitive rational deliberation that requires discipline, flexibility and willingness to change. Every change has a risk Risk diversification and regression toward the mean Defining strategy and efficient thinking, only diversifying the approaches will make you similar to the others in the market. It is important to diversify while maintaining a balance between efficiency and scale. Although it is necessary to make a quick mistake to understand the market and customers, it takes agility, knowledge, focus and competence to equate the company's progress and flow in the opportunities generated with scale. It should have a dynamic pricing model, where the salesforce man is part of the business strategy from the beginning. As it is a disruption of the sales model, the professional's work model must be differentiated. Prioritization; Efficiency; Time is limited; Prospect theory; Utility; Risk; Decision making; Planning; Goals;"},{"id":"notes/you-can-do-anything-but-you-can-t-do-everything#0.4","kind":"note","title":"you can do anything, but you can't do everything","heading":null,"tags":["focus","startup","writing"],"url":"/notes/you-can-do-anything-but-you-can-t-do-everything","section":"Notes","date":"2026-10-24","text":"Business; Market; Product; Development; Strategy"},{"id":"notes/you-may-not-need-to-buy-this-course#0.0","kind":"note","title":"You may not need to buy this course?","heading":null,"tags":["learning"],"url":"/notes/you-may-not-need-to-buy-this-course","section":"Notes","date":"2026-10-24","text":"Buying a course make your feel that you made a real commitment to learn something. Watching the videos also make you feel you are making progress. The problem start happening when you try to apply everything that you \"learned\" in a side project, or real life. Usually what happens is that things are not so easy as it sounds in a video lesson, you try to setup Webpack and get weird error that didn't show in the video. Reality has many more details that you can see in video. All courses are about happy case. The happy case is when everything goes well. The problem is that not everything goes well at first in real life. As your computer could be a bit difference. The version of the package you are working on is different. So if courses are not the best way to learn something, what is the best one? Better ways to learn something Learning and cognitive process has being studied many and many years, and we still do not an answer of how we learn. One book that has many insights about it is Make it Stick. You learn better if you connect new concepts to old ones that you know already. You learn more practicing Make it stick"},{"id":"notes/zettelkasten-for-design#0.0","kind":"note","title":"Zettelkasten for Design","heading":null,"tags":["zettelkasten","design"],"url":"/notes/zettelkasten-for-design","section":"Notes","date":"2026-10-24","text":"Zettelkasten is a way to organize ideas in atoms that can be joined and combined. What would be like a zettelkasten for design? We should be able to link one design to another We should be able to compose designs using other design atoms."},{"id":"notes/zettelkasten-notion#0.0","kind":"note","title":"Zettelkasten Notion","heading":null,"tags":["zettelkasten","notion"],"url":"/notes/zettelkasten-notion","section":"Notes","date":"2026-10-24","text":"How to implement zettelkasten process in notion? use a database use a template for a new zettle add backlinks Zettelkasten in notion: My Zettelkasten in Notion I have a list of notes inside a knowledge base note All notes are flat, I keep external links and links to other notes inside each note I create a note with some concepts and then one note per concept For instance, reading a blog/book I create a note for the book and N notes per each concept I also have notes about practice. Practice is the only way to learn about the details of reality Reality has a lot of details"},{"id":"notes/zettelkasten-notion#1.0","kind":"note","title":"Zettelkasten Notion","heading":"Links","tags":["zettelkasten","notion"],"url":"/notes/zettelkasten-notion","section":"Notes","date":"2026-10-24","text":"Links Zettelkästen Knowledge base"},{"id":"notes/zettelkasten-notion#2.0","kind":"note","title":"Zettelkasten Notion","heading":"Backlinks","tags":["zettelkasten","notion"],"url":"/notes/zettelkasten-notion","section":"Notes","date":"2026-10-24","text":"Backlinks"},{"id":"notes/zine#0.0","kind":"note","title":"Zine","heading":null,"tags":["content"],"url":"/notes/zine","section":"Notes","date":"2026-10-24","text":"Zine is a type of content used a lot by Julia Evans where she puts some tips and content in a single image with text. It is a tl;dr; based on image text, a cartoon based approach to convey information."},{"id":"notes/zine#1.0","kind":"note","title":"Zine","heading":"Links","tags":["content"],"url":"/notes/zine","section":"Notes","date":"2026-10-24","text":"Links"},{"id":"notes/zine#2.0","kind":"note","title":"Zine","heading":"References","tags":["content"],"url":"/notes/zine","section":"Notes","date":"2026-10-24","text":"References"},{"id":"https://dev.to/woovi/creating-a-certificate-x509-expiration-dashboard-using-grafana-211k","kind":"writing","title":"Creating a Certificate X.509 expiration Dashboard using Grafana","heading":null,"tags":[],"url":"https://dev.to/woovi/creating-a-certificate-x509-expiration-dashboard-using-grafana-211k","section":"dev.to","date":"2026-01-05","text":"Creating a Certificate X.509 expiration Dashboard using Grafana"},{"id":"https://sibelius.substack.com/p/software-development-retrospective","kind":"writing","title":"Software Development Retrospective","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/software-development-retrospective","section":"Substack","date":"2025-12-30","text":"Software Development Retrospective"},{"id":"https://dev.to/woovi/saving-terraform-state-in-s3-4ja7","kind":"writing","title":"Saving Terraform State in S3","heading":null,"tags":[],"url":"https://dev.to/woovi/saving-terraform-state-in-s3-4ja7","section":"dev.to","date":"2025-12-04","text":"Saving Terraform State in S3"},{"id":"https://dev.to/woovi/creating-a-s3-bucket-using-terraform-4kgb","kind":"writing","title":"Creating a S3 bucket using Terraform","heading":null,"tags":[],"url":"https://dev.to/woovi/creating-a-s3-bucket-using-terraform-4kgb","section":"dev.to","date":"2025-12-03","text":"Creating a S3 bucket using Terraform"},{"id":"https://dev.to/woovi/copy-and-paste-on-proxmox-vm-15il","kind":"writing","title":"Copy and Paste on Proxmox VM","heading":null,"tags":[],"url":"https://dev.to/woovi/copy-and-paste-on-proxmox-vm-15il","section":"dev.to","date":"2025-12-02","text":"Copy and Paste on Proxmox VM"},{"id":"https://dev.to/woovi/using-terraform-to-create-lxc-in-proxmox-496h","kind":"writing","title":"Using Terraform to create LXC in Proxmox","heading":null,"tags":[],"url":"https://dev.to/woovi/using-terraform-to-create-lxc-in-proxmox-496h","section":"dev.to","date":"2025-12-01","text":"Using Terraform to create LXC in Proxmox"},{"id":"https://dev.to/woovi/a-modern-nodejs-typescript-setup-for-2025-nlk","kind":"writing","title":"A Modern Node.js + TypeScript Setup for 2025 🚀","heading":null,"tags":[],"url":"https://dev.to/woovi/a-modern-nodejs-typescript-setup-for-2025-nlk","section":"dev.to","date":"2025-01-29","text":"A Modern Node.js + TypeScript Setup for 2025 🚀"},{"id":"https://dev.to/woovi/ngrok-from-scratch-be3","kind":"writing","title":"\"ngrok\" from scratch","heading":null,"tags":[],"url":"https://dev.to/woovi/ngrok-from-scratch-be3","section":"dev.to","date":"2025-01-28","text":"\"ngrok\" from scratch"},{"id":"https://dev.to/woovi/how-to-self-host-any-open-source-service-1p8d","kind":"writing","title":"How to self-host any open source service?","heading":null,"tags":[],"url":"https://dev.to/woovi/how-to-self-host-any-open-source-service-1p8d","section":"dev.to","date":"2025-01-27","text":"How to self-host any open source service?"},{"id":"https://dev.to/woovi/bootstrapping-argocd-with-helm-and-helmfile-2fhe","kind":"writing","title":"Bootstrapping ArgoCD with Helm and Helmfile","heading":null,"tags":[],"url":"https://dev.to/woovi/bootstrapping-argocd-with-helm-and-helmfile-2fhe","section":"dev.to","date":"2025-01-24","text":"Bootstrapping ArgoCD with Helm and Helmfile"},{"id":"https://dev.to/woovi/sharing-a-redis-using-a-prefix-43e2","kind":"writing","title":"Sharing a Redis using a Prefix","heading":null,"tags":[],"url":"https://dev.to/woovi/sharing-a-redis-using-a-prefix-43e2","section":"dev.to","date":"2025-01-23","text":"Sharing a Redis using a Prefix"},{"id":"https://dev.to/woovi/enhancing-dx-by-using-staging-services-in-development-3f0d","kind":"writing","title":"Enhancing DX by Using Staging Services in Development","heading":null,"tags":[],"url":"https://dev.to/woovi/enhancing-dx-by-using-staging-services-in-development-3f0d","section":"dev.to","date":"2025-01-22","text":"Enhancing DX by Using Staging Services in Development"},{"id":"https://dev.to/woovi/optimizing-ssh-connections-1oa4","kind":"writing","title":"Optimizing SSH Connections","heading":null,"tags":[],"url":"https://dev.to/woovi/optimizing-ssh-connections-1oa4","section":"dev.to","date":"2025-01-21","text":"Optimizing SSH Connections"},{"id":"https://sibelius.substack.com/p/use-information-asymmetry-to-create","kind":"writing","title":"Use Information Asymmetry to create a defensible Startup moat","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/use-information-asymmetry-to-create","section":"Substack","date":"2024-01-22","text":"Use Information Asymmetry to create a defensible Startup moat"},{"id":"https://sibelius.substack.com/p/the-best-business-models-align-all","kind":"writing","title":"The best business models align all stakeholders needs","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/the-best-business-models-align-all","section":"Substack","date":"2024-01-19","text":"The best business models align all stakeholders needs"},{"id":"https://sibelius.substack.com/p/from-passive-to-an-active-person","kind":"writing","title":"From passive to an active Person","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/from-passive-to-an-active-person","section":"Substack","date":"2024-01-18","text":"From passive to an active Person"},{"id":"https://sibelius.substack.com/p/common-mistakes-of-developers-as","kind":"writing","title":"Common mistakes of developers as first time startup founders","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/common-mistakes-of-developers-as","section":"Substack","date":"2024-01-17","text":"Common mistakes of developers as first time startup founders"},{"id":"https://sibelius.substack.com/p/god-is-omniscient-omnipresent-and","kind":"writing","title":"God is omniscient, omnipresent and omnipotent","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/god-is-omniscient-omnipresent-and","section":"Substack","date":"2024-01-12","text":"God is omniscient, omnipresent and omnipotent"},{"id":"https://sibelius.substack.com/p/what-is-expected-from-a-tech-lead","kind":"writing","title":"What is expected from a Tech Lead?","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/what-is-expected-from-a-tech-lead","section":"Substack","date":"2024-01-11","text":"What is expected from a Tech Lead?"},{"id":"https://sibelius.substack.com/p/you-never-going-to-get-it-right-at","kind":"writing","title":"You are never going to get it right at first","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/you-never-going-to-get-it-right-at","section":"Substack","date":"2024-01-10","text":"You are never going to get it right at first"},{"id":"https://sibelius.substack.com/p/how-to-hire-and-train-juniors","kind":"writing","title":"How to hire and train Juniors","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/how-to-hire-and-train-juniors","section":"Substack","date":"2024-01-09","text":"How to hire and train Juniors"},{"id":"https://sibelius.substack.com/p/what-is-expected-from-a-cto-of-a","kind":"writing","title":"What is expected from a CTO of a Startup?","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/what-is-expected-from-a-cto-of-a","section":"Substack","date":"2024-01-08","text":"What is expected from a CTO of a Startup?"},{"id":"https://sibelius.substack.com/p/how-to-build-a-simple-product","kind":"writing","title":"How to build a \"simple\" Product?","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/how-to-build-a-simple-product","section":"Substack","date":"2024-01-05","text":"How to build a \"simple\" Product?"},{"id":"https://sibelius.substack.com/p/a-practical-guide-of-using-a-landing","kind":"writing","title":"A practical guide of using a Landing Page to validate your idea","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/a-practical-guide-of-using-a-landing","section":"Substack","date":"2024-01-04","text":"A practical guide of using a Landing Page to validate your idea"},{"id":"https://sibelius.substack.com/p/how-to-become-a-senior-engineer-faster","kind":"writing","title":"How to become a Senior engineer faster?","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/how-to-become-a-senior-engineer-faster","section":"Substack","date":"2024-01-03","text":"How to become a Senior engineer faster?"},{"id":"https://sibelius.substack.com/p/why-should-you-prefer-textimage-over","kind":"writing","title":"Why should you prefer text/image over video/audio for learning?","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/why-should-you-prefer-textimage-over","section":"Substack","date":"2024-01-02","text":"Why should you prefer text/image over video/audio for learning?"},{"id":"https://sibelius.substack.com/p/the-evolution-of-meta-game-for-developers","kind":"writing","title":"The evolution of meta game for developers","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/the-evolution-of-meta-game-for-developers","section":"Substack","date":"2023-03-01","text":"The evolution of meta game for developers"},{"id":"https://sibelius.substack.com/p/receiving-more-feedback","kind":"writing","title":"Receiving more Feedback","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/receiving-more-feedback","section":"Substack","date":"2022-10-17","text":"Receiving more Feedback"},{"id":"https://sibelius.substack.com/p/we-dont-have-seniors-anymore","kind":"writing","title":"We don't have Seniors anymore","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/we-dont-have-seniors-anymore","section":"Substack","date":"2022-10-13","text":"We don't have Seniors anymore"},{"id":"https://sibelius.substack.com/p/you-can-do-anything","kind":"writing","title":"You can do anything","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/you-can-do-anything","section":"Substack","date":"2022-05-31","text":"You can do anything"},{"id":"https://sibelius.substack.com/p/what-developers-merge-when-nobodys","kind":"writing","title":"What developers merge when nobody's looking?","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/what-developers-merge-when-nobodys","section":"Substack","date":"2022-02-02","text":"What developers merge when nobody's looking?"},{"id":"https://sibelius.substack.com/p/how-to-find-the-best-solution","kind":"writing","title":"How to find the best solution?","heading":null,"tags":[],"url":"https://sibelius.substack.com/p/how-to-find-the-best-solution","section":"Substack","date":"2022-01-10","text":"How to find the best solution?"},{"id":"https://sibelius.medium.com/reduce-testing-and-building-time-in-monorepos-5843b63972b","kind":"writing","title":"Reduce testing and building time in Monorepos","heading":null,"tags":[],"url":"https://sibelius.medium.com/reduce-testing-and-building-time-in-monorepos-5843b63972b","section":"Medium","date":"2020-10-15","text":"Reduce testing and building time in Monorepos"},{"id":"https://sibelius.medium.com/parsing-slack-remind-command-fc3f5e4026e","kind":"writing","title":"Parsing Slack /remind command","heading":null,"tags":[],"url":"https://sibelius.medium.com/parsing-slack-remind-command-fc3f5e4026e","section":"Medium","date":"2020-07-22","text":"Parsing Slack /remind command"},{"id":"https://sibelius.medium.com/adding-server-side-rendering-to-a-relay-production-app-8df64495aebf","kind":"writing","title":"Adding Server Side Rendering to a Relay Production App","heading":null,"tags":[],"url":"https://sibelius.medium.com/adding-server-side-rendering-to-a-relay-production-app-8df64495aebf","section":"Medium","date":"2020-02-27","text":"Adding Server Side Rendering to a Relay Production App"},{"id":"https://sibelius.medium.com/how-we-save-1m-hours-of-development-using-react-navigation-3681f2f907c9","kind":"writing","title":"How we save 1M hours of development using React Navigation","heading":null,"tags":[],"url":"https://sibelius.medium.com/how-we-save-1m-hours-of-development-using-react-navigation-3681f2f907c9","section":"Medium","date":"2019-02-21","text":"How we save 1M hours of development using React Navigation"},{"id":"https://sibelius.medium.com/relay-modern-migration-to-typescript-c26ab0ee749c","kind":"writing","title":"Relay Modern: Migration to Typescript","heading":null,"tags":[],"url":"https://sibelius.medium.com/relay-modern-migration-to-typescript-c26ab0ee749c","section":"Medium","date":"2018-12-28","text":"Relay Modern: Migration to Typescript"},{"id":"https://sibelius.medium.com/relay-modern-the-relay-store-8984cd148798","kind":"writing","title":"Relay Modern: the Relay Store","heading":null,"tags":[],"url":"https://sibelius.medium.com/relay-modern-the-relay-store-8984cd148798","section":"Medium","date":"2018-12-28","text":"Relay Modern: the Relay Store"},{"id":"https://sibelius.medium.com/relay-modern-what-is-a-fragment-c70f164c2469","kind":"writing","title":"Relay Modern — What is a Fragment?","heading":null,"tags":[],"url":"https://sibelius.medium.com/relay-modern-what-is-a-fragment-c70f164c2469","section":"Medium","date":"2018-12-19","text":"Relay Modern — What is a Fragment?"},{"id":"https://sibelius.medium.com/why-your-company-should-have-an-open-source-playground-4bb93068ce95","kind":"writing","title":"Why your company should have an Open Source Playground","heading":null,"tags":[],"url":"https://sibelius.medium.com/why-your-company-should-have-an-open-source-playground-4bb93068ce95","section":"Medium","date":"2018-12-15","text":"Why your company should have an Open Source Playground"},{"id":"https://medium.com/entria/incremental-migration-to-typescript-on-a-flowtype-codebase-515f6490d92d","kind":"writing","title":"Incremental Migration to TypeScript on a Flowtype codebase","heading":null,"tags":[],"url":"https://medium.com/entria/incremental-migration-to-typescript-on-a-flowtype-codebase-515f6490d92d","section":"Medium","date":"2018-09-04","text":"Incremental Migration to TypeScript on a Flowtype codebase"},{"id":"https://medium.com/entria/relay-modern-network-deep-dive-ec187629dfd3","kind":"writing","title":"Relay Modern Network Deep Dive","heading":null,"tags":[],"url":"https://medium.com/entria/relay-modern-network-deep-dive-ec187629dfd3","section":"Medium","date":"2018-07-22","text":"Relay Modern Network Deep Dive"},{"id":"https://cve.now/","kind":"reading","title":"cve.now: a free CVE feed for agents","heading":null,"tags":["tool"],"url":"https://cve.now/","section":"Reading","date":"2026-10-24","text":"A free CVE feed for agents. cve.now"},{"id":"https://sophiebits.com/2020/01/01/fast-maintainable-db-patterns","kind":"reading","title":"Fast and maintainable patterns for fetching from a database","heading":null,"tags":["article"],"url":"https://sophiebits.com/2020/01/01/fast-maintainable-db-patterns","section":"Reading","date":"2026-10-24","text":"sophiebits.com"},{"id":"https://github.com/jiwoochris/artex-global","kind":"reading","title":"jiwoochris/artex-global","heading":null,"tags":["repo"],"url":"https://github.com/jiwoochris/artex-global","section":"Reading","date":"2026-10-23","text":"ARTEX 한국어판 · AI 자율 침투 테스트 프레임워크(upstream: Autumn-27/ARTEX, AGPL-3.0) GitHub"},{"id":"https://x.com/akitaonrails/status/2113295175216701529","kind":"reading","title":"Depois de semanas, investindo o custo de uma DGX Spark 😱 tenho um veredito sobre LLM open source: Qwen 3.8 Flash Next + Strata numa RTX 5090 já é \"competente o suficiente\" (pun intended) pra uso do dia a dia.  A resposta detalhada é BEM maior que que isso então vamos lá. Estou… pic.twitter.com/IUPg2rnHYK","heading":null,"tags":["post"],"url":"https://x.com/akitaonrails/status/2113295175216701529","section":"Reading","date":"2026-10-22","text":"Fabio Makita (@AkitaOnRails)"},{"id":"https://emudhra.we-have-a-problem.com/","kind":"reading","title":"eMudhra Intermediate CA Compromise","heading":null,"tags":["tool"],"url":"https://emudhra.we-have-a-problem.com/","section":"Reading","date":"2026-10-20","text":"The private keys of eight eMudhra intermediate CA certificates, trusted by major root programs, have been compromised. Check whether your client is affected and how to protect it. we-have-a-problem.com"},{"id":"https://lethain.com/small-changes/","kind":"reading","title":"Speeding up code review with `small-change`","heading":null,"tags":["article"],"url":"https://lethain.com/small-changes/","section":"Reading","date":"2026-10-19","text":"lethain.com"},{"id":"https://cloudnative-pg.io/","kind":"reading","title":"CloudNativePG - PostgreSQL Operator for Kubernetes","heading":null,"tags":["tool"],"url":"https://cloudnative-pg.io/","section":"Reading","date":"2026-10-19","text":"CloudNativePG - PostgreSQL Operator for Kubernetes CloudNativePG - PostgreSQL Operator for Kubernetes"},{"id":"https://x.com/milescranmer/status/2111105654211608847","kind":"reading","title":"Here is the full talk: https://t.co/is8hMHaTlS pic.twitter.com/CybHdJ3D1c","heading":null,"tags":["post"],"url":"https://x.com/milescranmer/status/2111105654211608847","section":"Reading","date":"2026-10-18","text":"Miles Cranmer (@MilesCranmer)"},{"id":"https://jrdsgl.com/if-you-dont-run-your-own-llm-proxy-how-the-fuck-do-you-even-know-whats-going-on/","kind":"reading","title":"If you don't run your own LLM proxy, how the fuck do you even know whats going on?","heading":null,"tags":["article"],"url":"https://jrdsgl.com/if-you-dont-run-your-own-llm-proxy-how-the-fuck-do-you-even-know-whats-going-on/","section":"Reading","date":"2026-10-18","text":"jrdsgl.com"},{"id":"https://github.com/heliocosta-dev/revenue-centric-design","kind":"reading","title":"heliocosta-dev/revenue-centric-design","heading":null,"tags":["repo"],"url":"https://github.com/heliocosta-dev/revenue-centric-design","section":"Reading","date":"2026-10-17","text":"Product-design, conversion & behavioral-science principles for SaaS GitHub"},{"id":"https://pele.run/","kind":"reading","title":"Pele · Mermaid diagrams as themeable SVG","heading":null,"tags":["tool"],"url":"https://pele.run/","section":"Reading","date":"2026-10-17","text":"Pele is a lightweight open source library that renders Mermaid diagrams to SVG, themed with CSS variables. pele.run"},{"id":"https://cloud.google.com/blog/products/devops-sre/sre-book-second-edition","kind":"reading","title":"SRE book second edition | Google Cloud Blog","heading":null,"tags":["article"],"url":"https://cloud.google.com/blog/products/devops-sre/sre-book-second-edition","section":"Reading","date":"2026-10-17","text":"The second edition of the Site Reliability Engineering book reflects the shifts in infrastructure management from AI, microservices, serverless, etc. Google Cloud Blog"},{"id":"https://www.anthropic.com/research/ecdsa-curve-origins","kind":"reading","title":"Claude reveals ECDSA curve origins","heading":null,"tags":["article"],"url":"https://www.anthropic.com/research/ecdsa-curve-origins","section":"Reading","date":"2026-10-17","text":"The decades-old mystery of the origins of one of the most popular cryptographic standards has been explained. anthropic.com"},{"id":"https://x.com/thorstenball/status/2111115720637722945","kind":"reading","title":"Details:  - We push to main - Buildkite runs tests and builds images - GitHub Actions then runs infrastructure security checks and kicks off deployments - Failed check blocks deployment, pings commit author in Slack - CI keeps running on later pushes while we fix it - Later fixes… https://t.co/xTlzAVyVQp","heading":null,"tags":["post"],"url":"https://x.com/thorstenball/status/2111115720637722945","section":"Reading","date":"2026-10-16","text":"Thorsten Ball (@thorstenball)"},{"id":"https://x.com/bcherny/status/2111158659971699136","kind":"reading","title":"Don't sleep on Claude Slides. This is how I make slide decks now -- no more googling \"iphone frame svg\" like the old days  Try it: https://t.co/cAWdwarzgp pic.twitter.com/POdqFL9oIP","heading":null,"tags":["post"],"url":"https://x.com/bcherny/status/2111158659971699136","section":"Reading","date":"2026-10-16","text":"Boris Cherny (@bcherny)"},{"id":"https://x.com/alidalton/status/2111132067660800263","kind":"reading","title":"Docs app for an analytics Startup  Light mode 💡 pic.twitter.com/OoFjItPpiH","heading":null,"tags":["post"],"url":"https://x.com/alidalton/status/2111132067660800263","section":"Reading","date":"2026-10-16","text":"Ali Dalton (@alidalton)"},{"id":"https://x.com/thorstenball/status/2111130129355481240","kind":"reading","title":"Why are you still using pull requests?  Is it for code review?  If so, do you really think your or your colleagues catch bugs and mistakes that an Opus 5.5 or Fable or Astra won't find? You can literally spawn all three of them and have them check four times each.  (Also, don't…","heading":null,"tags":["post"],"url":"https://x.com/thorstenball/status/2111130129355481240","section":"Reading","date":"2026-10-16","text":"Thorsten Ball (@thorstenball)"},{"id":"https://akitaonrails.com/2026/08/07/por-que-uma-eleicao-digital-perfeita-ainda-nao-seria-viavel/","kind":"reading","title":"Por que uma eleição digital perfeita ainda não seria viável?","heading":null,"tags":["article"],"url":"https://akitaonrails.com/2026/08/07/por-que-uma-eleicao-digital-perfeita-ainda-nao-seria-viavel/","section":"Reading","date":"2026-10-15","text":"AkitaOnRails.com"},{"id":"https://github.com/rustfs/rustfs/releases","kind":"reading","title":"Releases · rustfs/rustfs","heading":null,"tags":["repo"],"url":"https://github.com/rustfs/rustfs/releases","section":"Reading","date":"2026-10-15","text":"RustFS is an open-source, S3-compatible high-performance object storage system supporting migration and coexistence with other S3-compatible platforms such as MinIO and Ceph. - rustfs/rustfs GitHub"},{"id":"https://rustfs.com/blog/announcing-rustfs-1-0-0-ga/","kind":"reading","title":"Announcing RustFS 1.0.0 GA: Production-Ready, Open Source, S3-Compatible Object Storage","heading":null,"tags":["article"],"url":"https://rustfs.com/blog/announcing-rustfs-1-0-0-ga/","section":"Reading","date":"2026-10-15","text":"RustFS 1.0.0 GA is here: our open source, S3-compatible object storage is now production-ready. Explore the journey, core features, and Docker quick start. rustfs.com"},{"id":"https://x.com/patrick_oshag/status/2109977458304856299","kind":"reading","title":"My conversation with David Vélez (@velez_david), founder and CEO of Nubank.  The last time we did this was five years ago, and Nubank had 35 million customers. Today it has over 140 million, and it has just announced it's coming to the US.   David now talks about expanding to 100… pic.twitter.com/Yf2GUWc5gf","heading":null,"tags":["post"],"url":"https://x.com/patrick_oshag/status/2109977458304856299","section":"Reading","date":"2026-10-14","text":"Patrick OShaughnessy (@patrick_oshag)"},{"id":"https://x.com/baruqrodrigues/status/2110158238549155954","kind":"reading","title":"1/9 E se eu falar que eu treinei um LLM do Zero, com dados 100% br, e feito sem gastar 1 real?  Hoje decidi abrir publicamente o código, os dados e os pesos do meu projeto de LLM Legislativo Brasileiro. É um pipeline completo que vai desde a coleta de quase 1 milhão de documentos…","heading":null,"tags":["post"],"url":"https://x.com/baruqrodrigues/status/2110158238549155954","section":"Reading","date":"2026-10-14","text":"Baruque (@baruqrodrigues)"},{"id":"https://github.com/xtool-org/xtool","kind":"reading","title":"xtool-org/xtool","heading":null,"tags":["repo"],"url":"https://github.com/xtool-org/xtool","section":"Reading","date":"2026-10-13","text":"Cross-platform Xcode replacement. Build and deploy iOS apps with SwiftPM on Linux, Windows, macOS. GitHub"},{"id":"https://github.com/OpenHands/OpenHands","kind":"reading","title":"OpenHands/OpenHands","heading":null,"tags":["repo"],"url":"https://github.com/OpenHands/OpenHands","section":"Reading","date":"2026-10-13","text":"🙌 OpenHands: AI-Driven Development GitHub"},{"id":"https://www.akitaonrails.com/2026/10/12/usuarios-linux-sempre-escolham-btrfs-nao-ext4/","kind":"reading","title":"Usuários Linux: sempre escolham BTRFS, não EXT4","heading":null,"tags":["article"],"url":"https://www.akitaonrails.com/2026/10/12/usuarios-linux-sempre-escolham-btrfs-nao-ext4/","section":"Reading","date":"2026-10-13","text":"AkitaOnRails.com"},{"id":"https://datatracker.ietf.org/doc/draft-goto-otp-token/","kind":"reading","title":"The `OTP-Token` Email Header Field","heading":null,"tags":["paper"],"url":"https://datatracker.ietf.org/doc/draft-goto-otp-token/","section":"Reading","date":"2026-10-10","text":"This document defines the OTP-Token email header field, which can be used to deliver One-Time Passcodes (OTP) in a machine-readable and origin-bound manner alongside the human-readable message carrying that content today. Recipient Message User Agents (rMUA) can collaborate with other entities in the ecosystem to assist in the delivery of these codes to the context which wishes to verify their successful delivery. IETF Datatracker"},{"id":"https://www.allthingsdistributed.com/2026/08/on-building-scalable-control-planes.html","kind":"reading","title":"On building scalable control planes","heading":null,"tags":["article"],"url":"https://www.allthingsdistributed.com/2026/08/on-building-scalable-control-planes.html","section":"Reading","date":"2026-10-10","text":"Zak van der Merwe has spent his entire career at AWS building control planes. First for EC2 and now for DSQL. On the surface, the control plane looks quite boring: it records what should exist and reconciles that with what actually does. Nobody leaves school dreaming of building one, but Zak will be the first to tell you that if you like solving hard problems in distributed systems, there are few better places to be. It’s where many of those hard problems converge, and where the decisions you make determine whether a service survives its own growth. All Things Distributed"},{"id":"https://developers.openai.com/plugins/build/mcp-events","kind":"reading","title":"MCP Events – Plugins | OpenAI Developers","heading":null,"tags":["article"],"url":"https://developers.openai.com/plugins/build/mcp-events","section":"Reading","date":"2026-10-10","text":"Implement event subscriptions and webhook delivery for your MCP server. OpenAI Developers"},{"id":"https://github.com/shergin/baton","kind":"reading","title":"shergin/baton","heading":null,"tags":["repo"],"url":"https://github.com/shergin/baton","section":"Reading","date":"2026-10-09","text":"🥖 Relay for SwiftUI and Compose GitHub"},{"id":"https://api.onlyoffice.com/","kind":"reading","title":"API Documentation | ONLYOFFICE","heading":null,"tags":["tool"],"url":"https://api.onlyoffice.com/","section":"Reading","date":"2026-10-08","text":"api.onlyoffice.com"},{"id":"https://github.com/data-privacy-stack/presidio","kind":"reading","title":"data-privacy-stack/presidio","heading":null,"tags":["repo"],"url":"https://github.com/data-privacy-stack/presidio","section":"Reading","date":"2026-10-07","text":"An open-source framework for detecting, redacting, masking, and anonymizing sensitive data (PII) across text, images, and structured data. Supports NLP, pattern matching, and customizable pipelines. GitHub"},{"id":"https://www.uber.com/us/en/blog/designing-mcp-gateway/","kind":"reading","title":"width=device-width, initial-scale=1\" name=\"viewport\"/><meta data-rh=\"true\" content=\"Uber has embraced MCP to supercharge AI-powered developer workflows with quality context. Learn how Uber scaled from a community-driven solution to hundreds of MCP servers.\" name=\"description\"/><meta data-rh=","heading":null,"tags":["article"],"url":"https://www.uber.com/us/en/blog/designing-mcp-gateway/","section":"Reading","date":"2026-10-06","text":"width=device-width, initial-scale=1\" name=\"viewport\"/><meta data-rh=\"true\" content=\"Uber has embraced MCP to supercharge AI-powered developer workflows with quality context. Learn how Uber scaled from a community-driven solution to hundreds of MCP servers.\" name=\"description\"/><meta data-rh=\"true\" content=\"Designing MCP Gateway Uber's MCP Management Platform\" property=\"og:title\"/><meta data-rh= width=device-width, initial-scale=1\" name=\"viewport\"/><meta data-rh=\"true\" content=\"Uber has embraced MCP to supercharge AI-powered developer workflows with quality context. Learn how Uber scaled from a community-driven solution to hundreds of MCP servers.\" name=\"description\"/><meta data-rh=\"true\" content=\"Designing MCP Gateway Uber's MCP Management Platform\" property=\"og:title\"/><meta data-rh=\"true\" content=\"Uber has embraced MCP to supercharge AI-powered developer workflows with quality context. Learn how Uber scaled from a community-driven solution to hundreds of MCP servers.\" property=\"og:description\"/><meta data-rh=\"true\" content=\"website\" property=\"og:type\"/><meta data-rh=\"true\" content=\"https://www.uber.com/us/en/blog/designing-mcp-gateway/\" property=\"og:url\"/><meta data-rh=\"true\" content=\"https://tb-static.uber.com/prod/udam-assets/c724325d-7cdb-41d2-b9f3-235f11728b1e.jpeg\" property=\"og:image\"/><meta data-rh="},{"id":"https://x.com/gabrielbuzziv/status/2107184113463554437","kind":"reading","title":"eu declaro aberta as eleições da bolha dev 🚨  quem é seu candidato, quem vai vencer essa?https://t.co/Qh4ru4Jma0 pic.twitter.com/C6LxwK2hx5","heading":null,"tags":["post"],"url":"https://x.com/gabrielbuzziv/status/2107184113463554437","section":"Reading","date":"2026-10-05","text":"Gabriel Buzzi (@gabrielbuzziv)"},{"id":"https://x.com/abreunotes/status/2105752785274978745","kind":"reading","title":"Mike Krieger, fundador do Instagram e hoje na Anthropic Labs, sobre como usar melhor o Claude Code. pic.twitter.com/Mxr6He5wk9","heading":null,"tags":["post"],"url":"https://x.com/abreunotes/status/2105752785274978745","section":"Reading","date":"2026-10-04","text":"Lucas Abreu (@abreunotes)"},{"id":"https://github.com/graphene-data/graphene","kind":"reading","title":"graphene-data/graphene","heading":null,"tags":["repo"],"url":"https://github.com/graphene-data/graphene","section":"Reading","date":"2026-10-03","text":"Turn your coding agent into a world-class data analyst GitHub"},{"id":"https://github.com/CopilotKit/OpenDots","kind":"reading","title":"CopilotKit/OpenDots","heading":null,"tags":["repo"],"url":"https://github.com/CopilotKit/OpenDots","section":"Reading","date":"2026-10-03","text":"Your always-on AI coworkers that move between text, calls, and Slack. GitHub"},{"id":"https://github.com/onnx/onnx","kind":"reading","title":"onnx/onnx","heading":null,"tags":["repo"],"url":"https://github.com/onnx/onnx","section":"Reading","date":"2026-10-02","text":"Open standard for machine learning interoperability GitHub"},{"id":"https://kserve.github.io/website/","kind":"reading","title":"KServe","heading":null,"tags":["article"],"url":"https://kserve.github.io/website/","section":"Reading","date":"2026-10-02","text":"KServe - A Kubernetes-native platform for serving machine learning models with standardized protocols for both predictive and generative AI. Scale to zero, GPU acceleration, and multi-framework support. kserve.github.io"},{"id":"https://data-intensive-visualized.vercel.app/","kind":"reading","title":"Data-Intensive, visualized","heading":null,"tags":["tool"],"url":"https://data-intensive-visualized.vercel.app/","section":"Reading","date":"2026-10-02","text":"Interactive simulations of Martin Kleppmann's Designing Data-Intensive Applications: LSM-trees and B-trees, replication lag, quorums, partitioning, isolation anomalies, clocks, consensus, MapReduce and stream processing. Data-Intensive, visualized"},{"id":"https://principles-of-product-development.vercel.app/","kind":"reading","title":"Product Development Flow, visualized","heading":null,"tags":["tool"],"url":"https://principles-of-product-development.vercel.app/","section":"Reading","date":"2026-10-02","text":"Interactive simulations of the ideas in Don Reinertsen's The Principles of Product Development Flow: cost of delay, queues, variability, batch size, WIP, cadence, feedback and decentralized control. Flow, visualized"},{"id":"https://x.com/karpathy/status/2105819303471976479","kind":"reading","title":"We'll be spending a lot more time trying to understand the outputs of language models. A few thoughts, tips & tricks:  Writing. Something I've had success with: Ask your LLM to explain something in ASD-STE100, it's a controlled language specification originally developed for… pic.twitter.com/uMFWTcBCsl","heading":null,"tags":["post"],"url":"https://x.com/karpathy/status/2105819303471976479","section":"Reading","date":"2026-10-02","text":"Andrej Karpathy (@karpathy)"},{"id":"https://x.com/shadcnlabs/status/2105527948610834605","kind":"reading","title":"Introducing ogimagecn  Build OG images like you build your UI.  Powered by Satori. Pick from 20+ ready-to-use image components you can copy, tweak, and make your own.  One command to get started. shadcn/ui compatible.    100% Free. Open source. pic.twitter.com/HYTht7RVLe","heading":null,"tags":["post"],"url":"https://x.com/shadcnlabs/status/2105527948610834605","section":"Reading","date":"2026-10-01","text":"Shadcn Labs (@shadcnlabs)"},{"id":"https://geo.new/","kind":"reading","title":"GEO.new — Free GEO Audit for AI Search","heading":null,"tags":["tool"],"url":"https://geo.new/","section":"Reading","date":"2026-10-01","text":"An AI-native GEO audit for AI search. See what ChatGPT, Perplexity and AI Overviews read on your page, and exactly what to fix first. Free, no signup. GEO.new"},{"id":"https://agent.shop/en","kind":"reading","title":"AgentShop — AI agents for enterprise commerce","heading":null,"tags":["article"],"url":"https://agent.shop/en","section":"Reading","date":"2026-10-01","text":"AI agents that sell, support and re-engage on WhatsApp, Instagram and your website, integrated with your e-commerce, ERP, logistics and payments, with enterprise-grade governance. AgentShop"},{"id":"https://docs.stripe.com/agentic-commerce/acp","kind":"reading","title":"Agentic Commerce Protocol","heading":null,"tags":["article"],"url":"https://docs.stripe.com/agentic-commerce/acp","section":"Reading","date":"2026-10-01","text":"Use the Agentic Commerce Protocol to enable AI agents to complete purchases on behalf of buyers. docs.stripe.com"},{"id":"https://docs.stripe.com/agentic-commerce/protocol","kind":"reading","title":"Universal Commerce Protocol","heading":null,"tags":["article"],"url":"https://docs.stripe.com/agentic-commerce/protocol","section":"Reading","date":"2026-10-01","text":"Universal Commerce Protocol (UCP) enables agentic commerce across platforms. docs.stripe.com"},{"id":"https://claude.dev/","kind":"reading","title":"claude.dev Blog / technical writing for people building with Claude","heading":null,"tags":["tool"],"url":"https://claude.dev/","section":"Reading","date":"2026-10-01","text":"Articles, videos, and build logs from Anthropic’s developers on building with Claude and Claude Code, including tips, tricks, and points of view. claude.dev Blog"},{"id":"https://gtor-visualized.vercel.app/","kind":"reading","title":"GTOR, visualized","heading":null,"tags":["tool"],"url":"https://gtor-visualized.vercel.app/","section":"Reading","date":"2026-09-30","text":"Interactive visualizations of Kris Kowal's A General Theory of Reactivity: iterators, promises, tasks, streams, signals and behaviors, running live. GTOR, visualized"},{"id":"https://fate.technology/","kind":"reading","title":"fate","heading":null,"tags":["tool"],"url":"https://fate.technology/","section":"Reading","date":"2026-09-30","text":"A modern data client for the web. fate.technology"},{"id":"https://github.com/shap/shap","kind":"reading","title":"shap/shap","heading":null,"tags":["repo"],"url":"https://github.com/shap/shap","section":"Reading","date":"2026-09-30","text":"A game theoretic approach to explain the output of any machine learning model. GitHub"},{"id":"https://www.anthropic.com/research/glm-5-3-and-the-spread-of-advanced-cyber-capabilities","kind":"reading","title":"GLM-5.3 and the spread of advanced cyber capabilities","heading":null,"tags":["article"],"url":"https://www.anthropic.com/research/glm-5-3-and-the-spread-of-advanced-cyber-capabilities","section":"Reading","date":"2026-09-29","text":"GLM-5.3 can autonomously build end-to-end cyber exploits, but unlike other frontier models, it was released without meaningful safeguards to limit misuse. anthropic.com"},{"id":"https://x.com/shadcnlabs/status/2104840500847263794","kind":"reading","title":"Introducing pdfcn  Build beautiful PDFs like you build your UI.  Powered by Takumi + Forme. Pick from 10+ themes, 40+ components & blocks, then customize everything.  One command to get started. shadcn/ui compatible.  100% Free. Open source. pic.twitter.com/15qZPBhbps","heading":null,"tags":["post"],"url":"https://x.com/shadcnlabs/status/2104840500847263794","section":"Reading","date":"2026-09-29","text":"Shadcn Labs (@shadcnlabs)"},{"id":"https://x.com/morett_the_best/status/2104890565783376040","kind":"reading","title":"Na Monest a gente processa mais de 100 milhões de jobs por dia, e isso é difícil p kct.  Nossa stack é simprona: NestJS + BullMQ.  E o problema de um sistema 99% backend é monitorar tudo isso, 100 milhões de jobs por dia sendo processados em mais de 25 contêineres Node.  É óbvio,…","heading":null,"tags":["post"],"url":"https://x.com/morett_the_best/status/2104890565783376040","section":"Reading","date":"2026-09-29","text":"madmorett, CTO at Monest (@Morett_the_best)"},{"id":"https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude-opus-and-sonnet","kind":"reading","title":"Cyber Verification Program | Claude Help Center","heading":null,"tags":["article"],"url":"https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude-opus-and-sonnet","section":"Reading","date":"2026-09-28","text":"support.claude.com"},{"id":"https://build-vs-buy-vs-llm.vercel.app/","kind":"reading","title":"Build vs Buy vs LLM, visualized","heading":null,"tags":["tool"],"url":"https://build-vs-buy-vs-llm.vercel.app/","section":"Reading","date":"2026-09-28","text":"Interactive visualizations of the build vs buy vs LLM decision: pros, cons, cost curves, and how AI shifts the weights. build-vs-buy-vs-llm.vercel.app"},{"id":"https://marimo.io/","kind":"reading","title":"marimo | a next-generation Python notebook","heading":null,"tags":["tool"],"url":"https://marimo.io/","section":"Reading","date":"2026-09-28","text":"Explore data and build apps seamlessly with marimo, a next-generation Python notebook. marimo.io"},{"id":"https://github.com/heygen-com/hyperframes","kind":"reading","title":"heygen-com/hyperframes","heading":null,"tags":["repo"],"url":"https://github.com/heygen-com/hyperframes","section":"Reading","date":"2026-09-28","text":"Write HTML. Render video. Built for agents. GitHub"},{"id":"https://github.com/NousResearch/hermes-agent/pull/125515","kind":"reading","title":"fix(sessions): rank list pages on ids before projecting, seed chains only from parents by sibelius · Pull Request #125515 · NousResearch/hermes-agent","heading":null,"tags":["repo"],"url":"https://github.com/NousResearch/hermes-agent/pull/125515","section":"Reading","date":"2026-09-28","text":"The agent that grows with you. Contribute to NousResearch/hermes-agent development by creating an account on GitHub. GitHub"},{"id":"https://github.com/agent-labs-dev/bughunters","kind":"reading","title":"agent-labs-dev/bugpatrol","heading":null,"tags":["repo"],"url":"https://github.com/agent-labs-dev/bughunters","section":"Reading","date":"2026-09-27","text":"Automated app testing from the future GitHub"},{"id":"https://github.com/kunchenguid/backpass","kind":"reading","title":"kunchenguid/backpass","heading":null,"tags":["repo"],"url":"https://github.com/kunchenguid/backpass","section":"Reading","date":"2026-09-27","text":"You don't write AGENTS.md. You train it with gradient descent. GitHub"},{"id":"https://x.com/webdevcody/status/2103653857377292720","kind":"reading","title":"one Opus 5.5 prompt, and now I run around a virtual office managing agents to work on github issues and merge conflicts pic.twitter.com/7j6Qs1G8eL","heading":null,"tags":["post"],"url":"https://x.com/webdevcody/status/2103653857377292720","section":"Reading","date":"2026-09-26","text":"WebDevCody (@webdevcody)"},{"id":"https://x.com/MollySOShea/status/2102397511562297584","kind":"reading","title":"BREAKING: a16z Launches The Horowitz Andreessen Academy with $42M in Funding  Yes, a school.  The Academy is an unaccredited, residential alternative to a 4-year degree in San Francisco, led by Founder & CEO Gagan Biyani (@gaganbiyani) (Udemy, Maven).   Marc Andreessen (@pmarca)… pic.twitter.com/j3krsjxyUN","heading":null,"tags":["post"],"url":"https://x.com/MollySOShea/status/2102397511562297584","section":"Reading","date":"2026-09-24","text":"Molly O’Shea (@MollySOShea)"},{"id":"https://x.com/joaoavf/status/2097042370185544182","kind":"reading","title":"A nossa IA hoje resolve 66% dos atendimentos a clientes com 90% de avaliações positivas.  Nos dia atuais, o suporte de IA ser ruim é skill issue. Segue um artigo contando a nossa história e aprendizados: https://t.co/0FlmJvlwTK","heading":null,"tags":["post"],"url":"https://x.com/joaoavf/status/2097042370185544182","section":"Reading","date":"2026-09-23","text":"João Ferreira (@joaoavf)"},{"id":"https://x.com/heypcbai/status/2102597124760449345","kind":"reading","title":"GitHub wasn’t built for hardware.  So we built Circuit World.  An AI-native EDA + MCAD platform for designing, iterating, collaborating, versioning, and manufacturing hardware in one browser.  You don’t have to start every design from scratch.  Start with one of 8,800+ existing… pic.twitter.com/UG9ZzX5dAQ","heading":null,"tags":["post"],"url":"https://x.com/heypcbai/status/2102597124760449345","section":"Reading","date":"2026-09-23","text":"HeyPCB (@heypcbai)"},{"id":"https://github.com/h4vismat/openigor","kind":"reading","title":"h4vismat/openigor","heading":null,"tags":["repo"],"url":"https://github.com/h4vismat/openigor","section":"Reading","date":"2026-09-22","text":"Contribute to h4vismat/openigor development by creating an account on GitHub. GitHub"},{"id":"https://www.pdfcn.dev/","kind":"reading","title":"pdfcn","heading":null,"tags":["tool"],"url":"https://www.pdfcn.dev/","section":"Reading","date":"2026-09-22","text":"A collection of beautifully designed, accessible, and customizable PDF components. Built on Takumi and Forme. Works with shadcn/ui. pdfcn"},{"id":"https://x.com/MiaAI_lab/status/2101821681404624976","kind":"reading","title":"I get a lot of data on what people actually run on their Sparks. Here’s what I have:  Solo DGX Spark - Most run Qwen3.8 Flash Next  2x DGX Sparks - GLM 5.3 Flash or DeepSeek v4.1 Flash  3x DGX Sparks, conf 1: - GLM 5.3 Flash on 2x DGX Sparks - Qwen3.8-Flash on solo DGX Spark -… pic.twitter.com/FOlpiLzkZX","heading":null,"tags":["post"],"url":"https://x.com/MiaAI_lab/status/2101821681404624976","section":"Reading","date":"2026-09-21","text":"Mia (@MiaAI_lab)"},{"id":"https://gregorygundersen.com/blog/2026/09/20/hierarchy-of-money/","kind":"reading","title":"The Hierarchy of Money","heading":null,"tags":["article"],"url":"https://gregorygundersen.com/blog/2026/09/20/hierarchy-of-money/","section":"Reading","date":"2026-09-21","text":"gregorygundersen.com"},{"id":"https://x.com/dr_cintas/status/2101768566164840752","kind":"reading","title":"Google just open-sourced ARTEMIS.  It lets Al agents control a real phone like a human.  You give the agent a task in plain English and it operates the device end to end: sees the screen, finds the elements, taps, swipes, navigates, verifies the outcome, and reports the result.… pic.twitter.com/X4JJQXmhnP","heading":null,"tags":["post"],"url":"https://x.com/dr_cintas/status/2101768566164840752","section":"Reading","date":"2026-09-21","text":"Alvaro Cintas (@dr_cintas)"},{"id":"https://x.com/southpolesteve/status/2100767781868150938","kind":"reading","title":"I've seen people describe Jev as an \"AI if statement\". But what if it actually WAS an if statement?  Introducing Probably: a programming language powered by Jev: https://t.co/Sg8lTR4Zx3  Jev baked into the language. “feels” asks a question. “match” routes between descriptions.… pic.twitter.com/xSxQIgFz8X","heading":null,"tags":["post"],"url":"https://x.com/southpolesteve/status/2100767781868150938","section":"Reading","date":"2026-09-18","text":"Steve Faulkner (@southpolesteve)"},{"id":"https://blog.detail.dev/posts/towards-self-driving-codebases/","kind":"reading","title":"Towards Self-Driving Codebases | Detail","heading":null,"tags":["article"],"url":"https://blog.detail.dev/posts/towards-self-driving-codebases/","section":"Reading","date":"2026-09-17","text":"We're post-tokenmaxxing. What are we pre-? How do we get there? Detail"},{"id":"https://blog.lerian.studio/da-autorizacao-a-liquidacao-o-papel-do-ledger-nas-transacoes-de-cartao/","kind":"reading","title":"Da autorização à liquidação: o papel do ledger em cartões","heading":null,"tags":["article"],"url":"https://blog.lerian.studio/da-autorizacao-a-liquidacao-o-papel-do-ledger-nas-transacoes-de-cartao/","section":"Reading","date":"2026-09-17","text":"Como o ledger organiza limite, cobrança e obrigações entre instituições em cada etapa de uma compra no cartão, da autorização até a liquidação. Lerian Blog"},{"id":"https://typesafe.ai/blog/introducing-system-one-models-and-jev","kind":"reading","title":"Introducing System One Models & Jev - TypeSafe AI Blog","heading":null,"tags":["article"],"url":"https://typesafe.ai/blog/introducing-system-one-models-and-jev","section":"Reading","date":"2026-09-17","text":"TypeSafe AI is an AI lab building machine-native intelligence infrastructure for automation, designed to make decisions within software. Try our first System One Model, Jev, in early access. typesafe.ai"},{"id":"https://github.com/jumpserver/jumpserver/releases/tag/v5.0.0","kind":"reading","title":"Release v5.0.0 · jumpserver/jumpserver","heading":null,"tags":["repo"],"url":"https://github.com/jumpserver/jumpserver/releases/tag/v5.0.0","section":"Reading","date":"2026-09-17","text":"JumpServer is an Open-source Privileged Access Management (PAM) platform with AI-powered capabilities, providing DevOps and IT teams a unified workspace to securely access SSH, RDP, Kubernetes, databases, websites, RemoteApp, VirtualApp, and more. - Release v5.0.0 · jumpserver/jumpserver GitHub"},{"id":"https://github.com/cloudflare/security-audit-skill","kind":"reading","title":"cloudflare/security-audit-skill","heading":null,"tags":["repo"],"url":"https://github.com/cloudflare/security-audit-skill","section":"Reading","date":"2026-09-17","text":"A coding-agent skill for multi-phase security audits with independently verified, machine-readable findings GitHub"},{"id":"https://a6mzero.com/posts/this-pcb-is-brought-to-you-by-fable-5/","kind":"reading","title":"This PCB is brought to you by Fable 5 — A6M-Zero","heading":null,"tags":["article"],"url":"https://a6mzero.com/posts/this-pcb-is-brought-to-you-by-fable-5/","section":"Reading","date":"2026-09-17","text":"An experiment to design a cute PCB (without touching any tools) in plain English a6mzero.com"},{"id":"https://yosefk.com/blog/doing-everyone-elses-job.html","kind":"reading","title":"Doing everyone else's job","heading":null,"tags":["article"],"url":"https://yosefk.com/blog/doing-everyone-elses-job.html","section":"Reading","date":"2026-09-16","text":"yosefk.com"},{"id":"https://x.com/ai/status/2099542994005418466","kind":"reading","title":"Too many AI personal assistants, too little time to assess all of them. Nice work here: https://t.co/xy1Fmyunq4 pic.twitter.com/FDSKiBlDPc","heading":null,"tags":["post"],"url":"https://x.com/ai/status/2099542994005418466","section":"Reading","date":"2026-09-16","text":"anand iyer (@ai)"},{"id":"https://expo.dev/blog/build-ios-apps-on-windows-with-cloud-simulators","kind":"reading","title":"You don't need a Mac to develop iOS apps — Expo blog","heading":null,"tags":["article"],"url":"https://expo.dev/blog/build-ios-apps-on-windows-with-cloud-simulators","section":"Reading","date":"2026-09-15","text":"Meet EAS Simulator, Expo's new service that gives every developer and every coding agent an iPhone in the cloud. Expo Blog"},{"id":"https://finsidersbrasil.com.br/noticias-sobre-fintechs/fraudes/bancos-usam-dados-de-telecomunicacoes-para-barrar-golpes-no-pix/","kind":"reading","title":"Bancos combatem fraudes com dados de telecomunicações e IA","heading":null,"tags":["article"],"url":"https://finsidersbrasil.com.br/noticias-sobre-fintechs/fraudes/bancos-usam-dados-de-telecomunicacoes-para-barrar-golpes-no-pix/","section":"Reading","date":"2026-09-15","text":"Para combater a crescente sofisticação dos golpes, bancos brasileiros como Itaú e Bradesco estão utilizando dados de telecomunicações para identificar fraudes em transações Pix e proteger seus clientes. Finsiders Brasil"},{"id":"https://infohub.delltechnologies.com/en-us/p/dell-pro-max-gb10-multi-node-llm-deployment/","kind":"reading","title":"Dell pro max gb10 multi node llm deployment","heading":null,"tags":["article"],"url":"https://infohub.delltechnologies.com/en-us/p/dell-pro-max-gb10-multi-node-llm-deployment/","section":"Reading","date":"2026-09-15","text":"infohub.delltechnologies.com"},{"id":"https://medium.com/mercadolibre-tech/internal-traffic-what-a-crazy-airport-3c9281831df9","kind":"reading","title":"Internal traffic what a crazy airport","heading":null,"tags":["article"],"url":"https://medium.com/mercadolibre-tech/internal-traffic-what-a-crazy-airport-3c9281831df9","section":"Reading","date":"2026-09-15","text":"medium.com"},{"id":"https://pnpm.io/blog/whats-different-in-pnpm-12","kind":"reading","title":"What's different in pnpm 12 | pnpm","heading":null,"tags":["article"],"url":"https://pnpm.io/blog/whats-different-in-pnpm-12","section":"Reading","date":"2026-09-14","text":"pnpm 12 is a rewrite of pnpm in Rust, and it is stable. Upgrading should not feel like a migration. Apart from the differences below, it keeps the commands, flags, settings, and lockfile format of pnpm 11, and the documentation applies to both versions. pnpm"},{"id":"https://accesssecurity.com.br/compliance/pci-dss-o-que-e/","kind":"reading","title":"PCI DSS v4.0.1: Guia Completo de Conformidade no Brasil [2026]","heading":null,"tags":["article"],"url":"https://accesssecurity.com.br/compliance/pci-dss-o-que-e/","section":"Reading","date":"2026-09-11","text":"Guia definitivo da PCI DSS v4.0.1 escrito por QSA autorizada: 12 requisitos, níveis, AOC, ROC, custos e prazos no Brasil. Access Security"},{"id":"https://www.tinybird.co/blog/what-i-learned-operating-clickhouse","kind":"reading","title":"I've operated petabyte-scale ClickHouse® clusters for 5 years | Tinybird","heading":null,"tags":["article"],"url":"https://www.tinybird.co/blog/what-i-learned-operating-clickhouse","section":"Reading","date":"2026-09-11","text":"What I learned operating ClickHouse at scale: the wins, the failures, and the lessons that only come from production experience. tinybird.co"},{"id":"https://cdn.nubank.com.br/mobile/taskforce/nubank-mobile-architecture-task-force-mission-report.pdf","kind":"reading","title":"Nubank mobile architecture task force mission report","heading":null,"tags":["paper"],"url":"https://cdn.nubank.com.br/mobile/taskforce/nubank-mobile-architecture-task-force-mission-report.pdf","section":"Reading","date":"2026-09-11","text":"cdn.nubank.com.br"},{"id":"https://www.coursera.org/specializations/machine-learning-introduction","kind":"reading","title":"Machine Learning","heading":null,"tags":["article"],"url":"https://www.coursera.org/specializations/machine-learning-introduction","section":"Reading","date":"2026-09-10","text":"Offered by Stanford Online and DeepLearning.AI. #BreakIntoAI with Machine Learning Specialization. Master fundamental AI concepts and ... Enroll for free. Coursera"},{"id":"https://tautology.town/2026/06/01/card-networks.html","kind":"reading","title":"What do Visa and Mastercard do? An intro to card networks @ tautology.town","heading":null,"tags":["article"],"url":"https://tautology.town/2026/06/01/card-networks.html","section":"Reading","date":"2026-09-10","text":"tautology.town is a blog that contains tautologies. tautology.town"},{"id":"https://www.youtube.com/watch?v=lnz2gRPDzrA","kind":"reading","title":"What does Visa do? The answer might surprise you","heading":null,"tags":["video"],"url":"https://www.youtube.com/watch?v=lnz2gRPDzrA","section":"Reading","date":"2026-09-10","text":"Visa is one of the most trusted and recognized brands in the world yet the nature of our business is still a mystery to some. Are we a credit card company? T... YouTube"},{"id":"https://react.dev/blog/2026/09/09/react-19-3","kind":"reading","title":"React 19.3 – React","heading":null,"tags":["article"],"url":"https://react.dev/blog/2026/09/09/react-19-3","section":"Reading","date":"2026-09-09","text":"The library for web and native user interfaces react.dev"},{"id":"https://tmux.online/","kind":"reading","title":"AI coding agents in your browser | tmux.online","heading":null,"tags":["tool"],"url":"https://tmux.online/","section":"Reading","date":"2026-09-03","text":"Monitor and control Claude Code, Codex, Gemini CLI, Aider, Copilot CLI and any tmux session from any browser. Terminal data stays on your machine tmux.online"},{"id":"https://pnpm.io/git-worktrees","kind":"reading","title":"pnpm + Git Worktrees for Multi-Agent Development | pnpm","heading":null,"tags":["article"],"url":"https://pnpm.io/git-worktrees","section":"Reading","date":"2026-08-29","text":"When multiple AI agents need to work on the same monorepo simultaneously, they each need an isolated working copy with fully functional node_modules. Git worktrees combined with pnpm's global virtual store make this practical: each worktree gets its own checkout and its own node_modules, but... pnpm"},{"id":"https://www.sonarsource.com/products/sonarqube/mcp-server/","kind":"reading","title":"SonarQube MCP Server | Code Context For AI Agents","heading":null,"tags":["article"],"url":"https://www.sonarsource.com/products/sonarqube/mcp-server/","section":"Reading","date":"2026-08-28","text":"Connect Claude Code, Cursor, and Copilot to real codebase context over MCP, so AI agents fix issues automatically before every pull request. Connect now. sonarsource.com"},{"id":"https://antiwork.com/","kind":"reading","title":"Antiwork — We automated ourselves out of the work.","heading":null,"tags":["tool"],"url":"https://antiwork.com/","section":"Reading","date":"2026-08-27","text":"Since 2023, Gumroad has run its operations through a single AI agent. This is how. antiwork.com"},{"id":"https://www.youtube.com/live/A-KCdj88cf4","kind":"reading","title":"SEMCOMP SSA 26: Dia 3 - Palestras online","heading":null,"tags":["video"],"url":"https://www.youtube.com/live/A-KCdj88cf4","section":"Reading","date":"2026-08-27","text":"Semana de Computação de Salvador 2026 - Dia 3Realização: InfoJr UFBA - Empresa Júnior de Informática da UFBA10:00 - Mesa de debate: Trajetórias Internacionai... YouTube"},{"id":"https://danluu.com/sounds-easy/","kind":"reading","title":"I could do that in a weekend!","heading":null,"tags":["article"],"url":"https://danluu.com/sounds-easy/","section":"Reading","date":"2026-08-22","text":"danluu.com"},{"id":"https://danluu.com/perf-opt/","kind":"reading","title":"There's no reason for software to be slow anymore","heading":null,"tags":["article"],"url":"https://danluu.com/perf-opt/","section":"Reading","date":"2026-08-22","text":"danluu.com"},{"id":"https://nolanlawson.com/2026/08/16/you-can-just-choose-how-many-bugs-you-want-now/","kind":"reading","title":"You can just choose how many bugs you want now","heading":null,"tags":["article"],"url":"https://nolanlawson.com/2026/08/16/you-can-just-choose-how-many-bugs-you-want-now/","section":"Reading","date":"2026-08-22","text":"There’s a bizarre aspect of AI coding that I’ve been trying to put my finger on, and I think it’s this: you can basically just decide how many bugs you want… Read the Tea Leaves"},{"id":"https://www.linkedin.com/posts/iagxferreira_eu-criei-o-greg-h%C3%A1-um-tempo-eu-venho-enfrentando-share-7496227875482656768-ChZC/","kind":"reading","title":"GREG: resolução geográfica com IA local e RAG para KYC global | Iago Ferreira posted on the topic | LinkedIn","heading":null,"tags":["article"],"url":"https://www.linkedin.com/posts/iagxferreira_eu-criei-o-greg-h%C3%A1-um-tempo-eu-venho-enfrentando-share-7496227875482656768-ChZC/","section":"Reading","date":"2026-08-20","text":"LinkedIn"},{"id":"https://x.com/reeshasx/status/2090198916763431256","kind":"reading","title":"dica pra pentest, bugbounty e hacking em geral  testem: x-foward-for x-foward-host x-real-ip fowarded x-forwarded-host x-forwarded-proto  e alguns outros headers q não vou lembrar de cabeça   alem de bypass em rate limit você consegue acesso a infra interna por proxy trust issue… https://t.co/4Qv4P8U6H5","heading":null,"tags":["post"],"url":"https://x.com/reeshasx/status/2090198916763431256","section":"Reading","date":"2026-08-19","text":"Reesha (@Reeshasx)"},{"id":"https://x.com/emilkowalski/status/2090031918523842766","kind":"reading","title":"New skill: /animate-expo  All the animation knowledge, but for your native apps.  React Native and Expo: gestures, sheets, haptics, screen transitions, and more.  Made in collaboration with the @expo team.https://t.co/zEnLEjkvIp","heading":null,"tags":["post"],"url":"https://x.com/emilkowalski/status/2090031918523842766","section":"Reading","date":"2026-08-19","text":"Emil Kowalski (@emilkowalski)"},{"id":"https://x.com/ajaypatel_aj/status/2089729317890843000","kind":"reading","title":"📦 𝗖𝗮𝗿𝗴𝗼𝗿𝗶𝘅 - Logistics App Template on @ShadcnStudio!  Cargorix is a logistics and operations dashboard built for shipping, warehouse management, and supply chain platforms.  Track shipments, deliveries, inventory, and logistics operations from a modern, scalable… pic.twitter.com/NigcTgG4to","heading":null,"tags":["post"],"url":"https://x.com/ajaypatel_aj/status/2089729317890843000","section":"Reading","date":"2026-08-19","text":"Ajay Patel (@ajaypatel_aj)"},{"id":"https://openlogi.org/en","kind":"reading","title":"OpenLogi","heading":null,"tags":["article"],"url":"https://openlogi.org/en","section":"Reading","date":"2026-08-19","text":"A native, local-first alternative to Logitech Options+, written in Rust. Remap buttons, drive DPI and SmartShift over HID++ — no account, no telemetry. OpenLogi"},{"id":"https://tart.run/","kind":"reading","title":"Toolset to build, run and manage macOS and Linux VMs","heading":null,"tags":["tool"],"url":"https://tart.run/","section":"Reading","date":"2026-08-18","text":"Native performance. Remote storage for Virtual Machines. Many integrations including GitHub, GitLab and more. tart.run"},{"id":"https://planetscale.com/blog/what-is-a-data-topology","kind":"reading","title":"What is a data topology? — PlanetScale","heading":null,"tags":["article"],"url":"https://planetscale.com/blog/what-is-a-data-topology","section":"Reading","date":"2026-08-18","text":"A data topology describes the sharding scheme a Neki router uses to map logical PostgreSQL tables to physical shards and route queries. planetscale.com"},{"id":"https://x.com/jhleath/status/2089401964568469558","kind":"reading","title":"Post by @jhleath","heading":null,"tags":["post"],"url":"https://x.com/jhleath/status/2089401964568469558","section":"Reading","date":"2026-08-18","text":"Hunter Leath (@jhleath)"},{"id":"https://x.com/a16z/status/2089444662788665436","kind":"reading","title":".@cdixon on \"Climbing the wrong hill\": pic.twitter.com/sYYjcC1XmR","heading":null,"tags":["post"],"url":"https://x.com/a16z/status/2089444662788665436","section":"Reading","date":"2026-08-18","text":"a16z (@a16z)"},{"id":"https://hetuva.com/","kind":"reading","title":"Hetuva — Evite MEDs na sua operação crypto","heading":null,"tags":["tool"],"url":"https://hetuva.com/","section":"Reading","date":"2026-08-18","text":"Prevenção de fraude antes da contestação existir: scoring em tempo real e inteligência de rede para operações Pix-nativas. hetuva.com"},{"id":"https://x.com/NousResearch/status/2089429432612147572","kind":"reading","title":"Introducing Bot Mode for Hermes Desktop.  Your agent profiles become a series of named Bots. Each Bot has its own role, model, memory, skills and profile picture; Bots can use any model and even communicate with each other.   Build a specialist Bot once to use it forever. pic.twitter.com/AYWD9Ro2I1","heading":null,"tags":["post"],"url":"https://x.com/NousResearch/status/2089429432612147572","section":"Reading","date":"2026-08-17","text":"Nous Research (@NousResearch)"},{"id":"https://softwaremill.com/managing-kafka-with-ai-and-mcp/","kind":"reading","title":"Managing Kafka with AI and MCP: A Hands-On mcp-confluent Guide","heading":null,"tags":["article"],"url":"https://softwaremill.com/managing-kafka-with-ai-and-mcp/","section":"Reading","date":"2026-08-16","text":"Discover how to integrate Kafka, AI, and the Model Context Protocol (MCP). Learn how to set up mcpconfluent with Claude Code, manage clusters, and overcome CLI hurdles. SoftwareMill"},{"id":"https://www.lab37.us/","kind":"reading","title":"Lab37","heading":null,"tags":["tool"],"url":"https://www.lab37.us/","section":"Reading","date":"2026-08-14","text":"Lab37 is pioneering the future of food production. We're not just building robots; we're crafting culinary ecosystems that empower restaurants, delight customers, and make great food more accessible than ever. lab37.us"},{"id":"https://www.rapid7.com/products/velociraptor/","kind":"reading","title":"Rapid7 Velociraptor DFIR Technology","heading":null,"tags":["article"],"url":"https://www.rapid7.com/products/velociraptor/","section":"Reading","date":"2026-08-14","text":"Velociraptor is a unique, advanced open-source endpoint monitoring, digital forensic and cyber response platform. Learn more. Rapid7"},{"id":"https://vercel.com/blog/everything-hackable-will-get-hacked","kind":"reading","title":"Everything hackable will get hacked","heading":null,"tags":["article"],"url":"https://vercel.com/blog/everything-hackable-will-get-hacked","section":"Reading","date":"2026-08-12","text":"Open-weight models that allow perform offensive research present an emerging cybersecurity challenge. But you do not need to wait for specialized models to begin defensive cybersecurity work. Vercel"},{"id":"https://claude.com/blog/run-claude-code-sessions-on-your-own-compute","kind":"reading","title":"Self-hosted environments for Claude Code","heading":null,"tags":["article"],"url":"https://claude.com/blog/run-claude-code-sessions-on-your-own-compute","section":"Reading","date":"2026-08-10","text":"Self-hosted environments are in public beta. Run Claude Code sessions on your own infrastructure, inside your network and next to your internal services. Claude"},{"id":"https://x.com/claudedevs/status/2085817074816070014","kind":"reading","title":"New in Claude Code: your sessions can now message each other.  Instead of having to re-explain yourself in another session, you can now tell Claude to do it. It sends a summary (not your history or files), and the other session picks it up mid-task. pic.twitter.com/PtNsfXeQXP","heading":null,"tags":["post"],"url":"https://x.com/claudedevs/status/2085817074816070014","section":"Reading","date":"2026-08-08","text":"ClaudeDevs (@ClaudeDevs)"},{"id":"https://x.com/kanewang_/status/2085021115953676744","kind":"reading","title":"takumi-pdf 0.2  - Up to 10x faster than react-pdf, 7x faster than headless Chrome - <𝚊 𝚑𝚛𝚎𝚏> works, clickable in the PDF - A4 now prints at actual A4 size - h1-h6 show up as bookmarks in the sidebar - headers and footers land in the print margins  npm/bun i takumi-pdf pic.twitter.com/1GqYa0tBso","heading":null,"tags":["post"],"url":"https://x.com/kanewang_/status/2085021115953676744","section":"Reading","date":"2026-08-05","text":"Kane Wang (@kanewang_)"},{"id":"https://www.centralcomputer.com/nvidia-dgx-spark-grace-blackwell-architecture-20-core-arm-10-cortex-x925-10-cortex-a725-128gb-lpddr5x-1-000-ai-tops-dgx-os.html","kind":"reading","title":"Nvidia dgx spark grace blackwell architecture 20 core arm 10 cortex x925 10 cortex a725 128gb lpddr5x 1 000 ai tops dgx os","heading":null,"tags":["article"],"url":"https://www.centralcomputer.com/nvidia-dgx-spark-grace-blackwell-architecture-20-core-arm-10-cortex-x925-10-cortex-a725-128gb-lpddr5x-1-000-ai-tops-dgx-os.html","section":"Reading","date":"2026-08-04","text":"centralcomputer.com"},{"id":"https://www.anthropic.com/engineering/building-effective-agents","kind":"reading","title":"Building effective AI agents","heading":null,"tags":["article"],"url":"https://www.anthropic.com/engineering/building-effective-agents","section":"Reading","date":"2026-08-04","text":"Practical guidance from Anthropic on building reliable AI agents, from simple composable patterns to fully autonomous systems. anthropic.com"},{"id":"https://pacee.ai/","kind":"reading","title":"Pacee AI — Seu copiloto de marketing","heading":null,"tags":["tool"],"url":"https://pacee.ai/","section":"Reading","date":"2026-07-31","text":"Conecte suas ferramentas de marketing e e-commerce em 2 minutos. A Pacee monitora, analisa e sugere o que fazer — todo dia, direto no WhatsApp. Pacee AI"},{"id":"https://huggingface.co/blog/agent-intrusion-technical-timeline","kind":"reading","title":"Anatomy of a Frontier Lab Agent Intrusion: A Technical Timeline of the July 2026 Incident","heading":null,"tags":["article"],"url":"https://huggingface.co/blog/agent-intrusion-technical-timeline","section":"Reading","date":"2026-07-29","text":"We’re on a journey to advance and democratize artificial intelligence through open source and open science. huggingface.co"}]}