{"id":"https:\/\/ninkovic.dev\/","title":"Nemanja's blog RSS feed","updated":"2026-03-29T08:22:20.494Z","generator":"https:\/\/github.com\/jpmonette\/feed","author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"},"link":[{"@attributes":{"rel":"alternate","href":"https:\/\/ninkovic.dev\/"}},{"@attributes":{"rel":"self","href":"https:\/\/ninkovic.dev\/atom.xml"}}],"subtitle":"My name is Nemanja, I'm a software engineer and this is RSS feed for my personal blog. I mostly write on technical topics such as Generative AI, DevOps, Cloud and my experiences from the software industry.","logo":"https:\/\/ninkovic.dev\/assets\/favicon-16x16.png","icon":"https:\/\/ninkovic.dev\/assets\/favicon-16x16.png","rights":"Copyright Nemanja Ninkovi\u0107","category":[{"@attributes":{"term":"Technology"}},{"@attributes":{"term":"Generative AI"}},{"@attributes":{"term":"Software development"}}],"entry":[{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2025\/prompt-snapshot-testing.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2025\/prompt-snapshot-testing.html"}},"updated":"2025-09-08T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}},{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2025\/think-twice-before-using-github-actions.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2025\/think-twice-before-using-github-actions.html"}},"updated":"2025-01-19T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}},{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2024\/chat-gpt-on-a-budget.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2024\/chat-gpt-on-a-budget.html"}},"updated":"2024-10-24T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}},{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2024\/extract-structured-information-with-llm.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2024\/extract-structured-information-with-llm.html"}},"updated":"2024-09-29T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}},{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2024\/rag-from-scratch-part-2.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2024\/rag-from-scratch-part-2.html"}},"updated":"2024-03-18T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}},{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2024\/rag-from-scratch-part-1.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2024\/rag-from-scratch-part-1.html"}},"updated":"2024-03-09T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}},{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2024\/learning-materials-for-engineers-starting-out-with-generative-ai.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2024\/learning-materials-for-engineers-starting-out-with-generative-ai.html"}},"updated":"2024-02-06T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}},{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2024\/generative-ai-glossary-for-beginners.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2024\/generative-ai-glossary-for-beginners.html"}},"updated":"2024-01-29T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}},{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2023\/using-spaced-repetition-to-pass-cloud-certifications.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2023\/using-spaced-repetition-to-pass-cloud-certifications.html"}},"updated":"2023-01-25T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}},{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2022\/an-improved-guide-for-compiling-wasm-with-emscripten-and-embind.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2022\/an-improved-guide-for-compiling-wasm-with-emscripten-and-embind.html"}},"updated":"2022-10-10T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}},{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2021\/how-to-acquire-more-time-for-technical-tasks.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2021\/how-to-acquire-more-time-for-technical-tasks.html"}},"updated":"2021-04-02T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}},{"title":{"@attributes":{"type":"html"}},"id":"https:\/\/ninkovic.dev\/blog\/2020\/testing-web-components-with-jest-and-lit-element.html","link":{"@attributes":{"href":"https:\/\/ninkovic.dev\/blog\/2020\/testing-web-components-with-jest-and-lit-element.html"}},"updated":"2020-06-01T00:00:00.000Z","summary":{"@attributes":{"type":"html"}},"author":{"name":"Nemanja Ninkovi\u0107","email":"contact@ninkovic.dev","uri":"https:\/\/ninkovic.dev\/"}}]}