56,966 blogs · [ { "id": "01a087b7-7c6a-72ff-8e96-1579fc0218c1", "title": "Recover panics in all Goroutines you start", "url": "https://dev.ribic.ba/recover-panics-goroutines/", "published_at": "2025-01-26T10:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-1579fc881c3f", "title": "The Danger of Running Untrusted Code", "url": "https://dev.ribic.ba/code-scam/", "published_at": "2024-11-21T10:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-1579fd67734e", "title": "How I failed to properly transfer this website's domain", "url": "https://dev.ribic.ba/failed-domain-transfer/", "published_at": "2024-05-06T04:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-1579fde9329c", "title": "Switching to iPhone from Android - again", "url": "https://dev.ribic.ba/android-to-iphone-again/", "published_at": "2024-05-05T04:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-1579fee1efae", "title": "My Google Pixel 5 is unable to make emergency calls", "url": "https://dev.ribic.ba/google-pixel-emergency/", "published_at": "2024-04-04T10:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-1579ffbd6224", "title": "Getting message from ChatGPT Assistants/Threads API", "url": "https://dev.ribic.ba/working-with-assistant-api/", "published_at": "2024-02-19T22:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a0022b570", "title": "Hosting multiple WordPress sites on a single VPS - the easy way", "url": "https://dev.ribic.ba/multiple-wordpress-single-vps/", "published_at": "2024-01-30T00:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a00fdf8d8", "title": "Deploying to EMR Serverless via EMR CLI", "url": "https://dev.ribic.ba/emr-serverless-dockerfile/", "published_at": "2024-01-29T10:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a01528e1e", "title": "Sending CodeDeploy deployment notifications to Slack with Terraform", "url": "https://dev.ribic.ba/codedeploy-slack-notifications-terraform/", "published_at": "2023-10-04T10:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a01785c8c", "title": "Defer your mutex Unlocks", "url": "https://dev.ribic.ba/defer-mutex-unlocks/", "published_at": "2023-02-25T06:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a02625953", "title": "Be Above Average", "url": "https://dev.ribic.ba/above-average/", "published_at": "2022-11-24T10:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a02badcc6", "title": "Easy memory-saving tricks in Go", "url": "https://dev.ribic.ba/golang-memory-savings/", "published_at": "2022-08-03T01:04:31+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a039d3988", "title": "Back to Google - after de-googling my phone", "url": "https://dev.ribic.ba/degoogle/", "published_at": "2021-11-04T10:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a0493272c", "title": "Glice v2 - Adding support for go.mod", "url": "https://dev.ribic.ba/glice-v2/", "published_at": "2021-07-27T10:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a05749e45", "title": "HTTP logging in Go", "url": "https://dev.ribic.ba/go-logging/", "published_at": "2021-04-14T06:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a05eef9e3", "title": "Removing null values from maps or JSON with Go", "url": "https://dev.ribic.ba/golang-null-values/", "published_at": "2021-02-16T22:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a05f2dd79", "title": "A robust RabbitMQ client in Go", "url": "https://dev.ribic.ba/golang-rabbitmq-client/", "published_at": "2020-08-02T06:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a06c4781b", "title": "Pushing data upstream in Context", "url": "https://dev.ribic.ba/context-upstream/", "published_at": "2020-05-23T06:00:00+00:00" }, { "id": "01a087b7-7c6a-72ff-8e96-157a078d0fb6", "title": "Updating Goroutines post-creation", "url": "https://dev.ribic.ba/updating-goroutines-post-creation/", "published_at": "2020-02-02T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515f89c115e", "title": "Writing RESTful APIs in Go, 3 years later", "url": "https://dev.ribic.ba/rest-api-go3/", "published_at": "2020-01-20T06:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515f8c8d496", "title": "A Year in Review - 2019", "url": "https://dev.ribic.ba/2019/", "published_at": "2020-01-01T06:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515f9c0cf2d", "title": "dt - Go's missing datetime package", "url": "https://dev.ribic.ba/golang-datetime/", "published_at": "2019-10-10T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515fa9d2ad7", "title": "Working with enums in Go", "url": "https://dev.ribic.ba/golang-enums/", "published_at": "2019-10-04T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515fae47112", "title": "Building a Cloud Function that generates PDFs from provided URL", "url": "https://dev.ribic.ba/cloud-function-html-to-pdf/", "published_at": "2019-07-16T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515faf04a81", "title": "Building a live chat with Go, NATS, Redis and Websockets", "url": "https://dev.ribic.ba/goch/", "published_at": "2019-07-10T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515fb6e7286", "title": "Deploying GoBuffalo app using Dokku", "url": "https://dev.ribic.ba/buffalo-dokku/", "published_at": "2019-06-05T22:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515fc52903b", "title": "Launching Confello", "url": "https://dev.ribic.ba/launching-confello/", "published_at": "2019-05-29T22:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515fd2a0e27", "title": "Google Datastore with a relational data model", "url": "https://dev.ribic.ba/relational-datastore/", "published_at": "2019-01-28T00:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515fd52fc6c", "title": "Why you should start blogging", "url": "https://dev.ribic.ba/why-you-should-blog/", "published_at": "2018-12-10T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515fdffde7e", "title": "Refactoring Gorsk - Why and how", "url": "https://dev.ribic.ba/refactoring-gorsk/", "published_at": "2018-10-28T06:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515feb31c81", "title": "Beyond REST", "url": "https://dev.ribic.ba/beyond-rest/", "published_at": "2018-09-15T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515ffb3011f", "title": "Marshal YAML fields into map[string]string", "url": "https://dev.ribic.ba/golang-yaml-string-map/", "published_at": "2018-08-30T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9515ffeb4910", "title": "Twisk - Golang RPC starter kit", "url": "https://dev.ribic.ba/twisk/", "published_at": "2018-08-15T22:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9516009d25ad", "title": "Serve SwaggerUI within your Golang application", "url": "https://dev.ribic.ba/serving-swaggerui-golang/", "published_at": "2018-06-09T23:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-95160142a111", "title": "Switched from Mac to Ubuntu", "url": "https://dev.ribic.ba/mac-to-ubuntu/", "published_at": "2018-06-04T00:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9516016473bb", "title": "Working with Go Web Frameworks - Gin and Echo", "url": "https://dev.ribic.ba/golang-web-frameworks/", "published_at": "2018-05-25T22:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9516025d1ce1", "title": "Removing comments", "url": "https://dev.ribic.ba/disabling-comments/", "published_at": "2018-04-16T06:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9516028ab094", "title": "Automate Chrome with Golang and ChromeDP", "url": "https://dev.ribic.ba/golang-chrome-automation/", "published_at": "2018-04-04T06:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-95160373e80f", "title": "Golang restful starter kit - GORSK", "url": "https://dev.ribic.ba/go-restful-starter-kit/", "published_at": "2018-03-26T06:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-951603dbe49d", "title": "Convert txt files to csv with Golang", "url": "https://dev.ribic.ba/txt-csv-golang/", "published_at": "2018-02-16T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-951603e1d0c5", "title": "After being completely honest, Upwork banned my account for 'being dishonest'", "url": "https://dev.ribic.ba/upwork-suspended/", "published_at": "2018-02-13T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9516049ca381", "title": "Elasticsearch query examples with Golang", "url": "https://dev.ribic.ba/golang-elastic/", "published_at": "2018-02-04T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9516056cde5b", "title": "Create Golang API documentation with SwaggerUI", "url": "https://dev.ribic.ba/swagger-golang/", "published_at": "2018-01-04T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-951606309d20", "title": "Fixing corrupt archive in Golang", "url": "https://dev.ribic.ba/go-corrupt-archive/", "published_at": "2017-12-15T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-951607202634", "title": "How to reduce JSON file size", "url": "https://dev.ribic.ba/reduce-json-size/", "published_at": "2017-12-09T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-951607ee2f78", "title": "Glice - Golang dependency and license checker", "url": "https://dev.ribic.ba/glice/", "published_at": "2017-12-01T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-95160889f702", "title": "Windows to Mac - Power user's perspective", "url": "https://dev.ribic.ba/win-to-mac/", "published_at": "2017-11-19T06:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-95160934e854", "title": "Kiss - A stupidly simple Hugo blogging theme", "url": "https://dev.ribic.ba/hugo-kiss/", "published_at": "2017-10-16T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9516096fc60f", "title": "Switching to iPhone from Android - Power user's experience", "url": "https://dev.ribic.ba/android-to-iphone/", "published_at": "2017-09-16T10:00:00+00:00" }, { "id": "01a087b7-7c6b-701c-b932-9516099b2212", "title": "Getting started - again", "url": "https://dev.ribic.ba/getting-started/", "published_at": "2017-09-12T15:04:31+00:00" } ] posts Claim your blog
Back to Ribic's Programming and tech blog
Blog · corpus.blog/blogs/dev.ribic.ba/posts

Ribic's Programming and tech blog

dev.ribic.ba

2025

2024

2023

2022

2021

2020

2019

2018

2017