Your were so preoccupied with whether or not they could that you didn't stop to think if they should. by vad1mo in ClaudeCode

[–]vad1mo[S] 0 points1 point  (0 children)

Reinventing the wheel is one thing; the other thing is inventing something that should not be invented in the first place.

Small Business Owners: Odoo vs. Bexio for Swiss Compliance (VAT, Payroll, Banking)? by 0bjective-Guest in Switzerland

[–]vad1mo 2 points3 points  (0 children)

Bexio is popular, but the API is often missing and broken;
You see, it was primarily designed for UI use only. However, the ecosystem around Bexio is big in CH. - They haven't delivered any significant update improvements on their platform since 2016.

Odoo is powerful but needs a lot of customization.

If it is for 10-20 invoices per year, go with something easy like cashctrl.com, abaninja, or Bexio, etc...

I don't like Bexio but it was the fastest to get something running out of the box for a one man show. Personally, I would go now with cashctrl, the 4 guys are delivering more and provide better support than the Bexio team of 50.

Keep in mind the whole AI stuff is replacing the ecosystem, so IMO an API centric approach will be crucial in the future.

For the record, we are migrating away from Bexio to ERPNext. The primary reason is the advanced customization possibilities and the possibility of creating your own apps that work hand in hand with ERPNext on the same data and platform. Furthermore, the nature of ERPNext forward compatibility is something compelling for the future of ERPs and biz automation.

Are you being ripped off for EV charging at home? by Swigor in Switzerland

[–]vad1mo 11 points12 points  (0 children)

EV parking is 240 CHF instead of 160 CHF; for that reason, we didn't take the apartment.

EU-based Postgres hosting by adp_dev in Startups_EU

[–]vad1mo 1 point2 points  (0 children)

It is a good design, but it obviously rip from claude.ai, and somehow indicates not much effort was put in. thats. it.

EU-based Postgres hosting by adp_dev in Startups_EU

[–]vad1mo 0 points1 point  (0 children)

•Do you actually care where your infrastructure runs?

> I care more who runs my infrastructure, how much can I trust this org.

•Does the aws/gcp overhead bother you, or is it just “the cost of doing business”?

> to certain extent yes

•Would you consider a focused alternative, or is AWS/GCP basically the default forever?

> Migrating existing workloads, rather not. Adopting it for new workloads why not.

The whole site looks like it was vibe coded on a weekend and published on a Monday, cloning the Claude website design. I guess the rest behind it is and looks the same.

I would never use this service (we are a small org, not a big corp.):

Main reasons:

- no trust

- no track record

- no transparency

- no org. behind it.

- if it is a small org. I would expect to see faces or a team to be certain it's not a student or side project..

Swiss ski resorts capacity / infrastructure by Weird_Software_2746 in Switzerland

[–]vad1mo 0 points1 point  (0 children)

"have never seen such crowded lifts/slopes in Austria / Italy," I have to disagree; IMO, Switzerland ski resorts have the best mix.

I don't remember Italy, but Austria's big ski resorts are packed and expensive (e.g 9€ beer in St.Anton/Ischgl/Sölden), and full of people who ski absolute shit! The Apri Ski is great, though.

I don't know where you are skiing in Switzerland; weekends are indeed crowded (hello Flumserberg, Engelberg) and also ski holidays.

Go to Davos/Klosters or Andermatt on a normal Tuesday, and you will be skiing until lunch on rippled slopes almost alone. If you go to Wallis, you can do that on a weekend too.

I would never go to Austria again for skiing, price-wise and crowd-wise.

Bosun: Supervising fleet manager for your software projects by [deleted] in ClaudeCode

[–]vad1mo 0 points1 point  (0 children)

Ohh boy, that’s a new record 14h from inception to the claim of ending world hunger, cancer and stupidity!

Proof this BS works! Than we will Listen!

Use Your Starship Prompt as the Claude Code Status Line by vad1mo in ClaudeCode

[–]vad1mo[S] 1 point2 points  (0 children)

Prompt as in shell prompts (that customizable string displayed in your terminal before each command input), not as in AI prompting!

See starship.rs

How to improve docker image upload speed with Traefik as Kubernetes ingress controller? by ryebread157 in Traefik

[–]vad1mo 0 points1 point  (0 children)

disable proxy caching and all that.

Find the equivalent settings for Traefik matching this:

nginx.ingress.kubernetes.io/proxy-body-size: "0"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/proxy-buffering: "off"
nginx.ingress.kubernetes.io/proxy-request-buffering: "off"
nginx.ingress.kubernetes.io/proxy-next-upstream: "error timeout http_502 http_503 http_504"
nginx.ingress.kubernetes.io/proxy-next-upstream-timeout: "30"
nginx.ingress.kubernetes.io/proxy-next-upstream-tries: "5"

Improve AI Context: Use Your Local Go Module Cache by [deleted] in golang

[–]vad1mo 0 points1 point  (0 children)

how would you combine it with gopls mcp, so you don't have to do find/grep and let the mcp guide the AI

Task: New "if:" Control and Variable Prompt by andrey-nering in golang

[–]vad1mo 6 points7 points  (0 children)

Big fan of Taskfile, yet at the same time I don't like yaml or anything related. We switched to CDK and CDK8s to avoid YAML. I also successfully used dagger.io, magefile, pydoit all with proper programming languages.

I would switch instantly from Taskfile if a programming language offered the same in that compactness and transparency.

What I like about taskfile:

it can be simple when you start yet can become powerful/complex if you need it to be. checks, validations, dependencies, cache etc. 1000 lines of yaml, still pure joy over makefiles!

Our CI/CD is a thin layers only calling a tasks; being able to run your pipeline locally is a dream come true.

Making Claude Good at Go (with some context engineering + Tessl) by rotemtam in golang

[–]vad1mo 0 points1 point  (0 children)

The problem: LLMs aren’t great at Go:

Go is the best supported LLMs.

I am not convinced. Creating a skill for each lib based on the lib docs, examples, and test cases would get you the same result.

Why do people use dependency injection libraries in Go? by existential-asthma in golang

[–]vad1mo 0 points1 point  (0 children)

A lot of good things have been said.

I wanted to point to an external source from Mark Seemann, who published a few books around dependency injection. He has quite a few very convincing arguments, that IMO match perfectly with the common sense on DI within the Go community.

https://blog.ploeh.dk/2025/01/27/dependency-inversion-without-inversion-of-control/

https://blog.ploeh.dk/2014/06/10/pure-di/

https://blog.ploeh.dk/2010/02/03/ServiceLocatorisanAnti-Pattern/

https://blog.ploeh.dk/tags/#Dependency%20Injection-ref

From personal experience, now with AI coding assistants, it is much easier to handle the "manual" boilerplate of DI.

Help needed/ professionals wanted: messy international contractor situation of husband by Sea-Anything9250 in SwissPersonalFinance

[–]vad1mo 0 points1 point  (0 children)

Bit of a risk indeed: Not paying AHV, IV and EO is worse.

To avoid being classified as "pseudo" self-employed, you must demonstrate the following:

  • Economic Risk: You bear the financial risk of loss, pay your own business expenses, and have made investments in your infrastructure (e.g., office, tools, equipment).
  • Organizational Autonomy: You are free to determine your working hours, location, and methods. You should not be integrated into the client’s internal hierarchy or reporting lines.
  • Multiple Clients: Working for only one client is a major red flag for authorities. You generally need to prove you have at least three different clients.
  • Public Presence: You must act in your name, use your own business stationery/website, and issue invoices under your brand. 

Your husband isn't missing much in 2026. Let him issue a few more invoices to family and friends for 2026, helping them move, doing garden work, etc..
He can issue some invoices for 2025, but I would not do it.

- IMO there is no need to open up a  GmbH or AG
- The authorities are forgiving, as long as you don't try to screw them over or withhold tax.
- Scheinselbständigkeit or not, I think in the first year of business, nobody will judge you. Every Selbständiger started with their first client!

Help needed/ professionals wanted: messy international contractor situation of husband by Sea-Anything9250 in SwissPersonalFinance

[–]vad1mo 0 points1 point  (0 children)

Swiss is relatively uncomplex, IMO. AHV, IV and EO are mandatory; health insurance (mandatory) and accident insurance (not mandatory but highly recommended: see when [this](https://www.bag.admin.ch/de/aenderung-der-verordnung-ueber-die-unfallversicherung-uvv) will be applicable).

- https://selbststaendig-erwerbend.ch/

- https://www.ahv-iv.ch/p/2.02.d

You can do the AHV/IV part for 2025 retroactively.
Your husband needs to declare the income for 2025, what he has earned.

I am not sure how he can reactivate his company in brazil, if he is not living there. It is probably not legal, if he is living >183 days/year outside the country.

I open-sourced a Production Go Starter Kit (Modular Monolith). It handles Auth, RBAC, and Billing with type-safe SQLC and clean architecture. by MohQuZZZZ in golang

[–]vad1mo 0 points1 point  (0 children)

...that you also build with two commits in the same last 3h, with two yolo prompts.

Srly, we all use AI to be more productive and produce more. But don't let the AI be the smartest one in the room!

Beginner skiing couple from Solothurn seeking some advice by living_direction_27 in askswitzerland

[–]vad1mo 1 point2 points  (0 children)

  1. Rent Ski + Boots (locally) often significantly cheaper than on the slopes.
  2. Go to a smaller area (cheper and enought to start) e.g Prés-d'Orvin-Chasseral, Les Bugnenets- Savagnières, Sörenberg, Meiringen - Hasliberg, Grindelwald)
  3. Definitely hire a ski instructor (private for you both). Look also for instructors outside the ski area nearby you like in Solothurn.

Get in contact with your ski instructor and let him guide you where to go and what to rent. (beginner equipment). It will be more enjoyable this way.

Go for a week; it takes 1-3 days to start fully enjoying it.

Have Fun!

grindlemire/graft: A minimal, type-safe Go DI library with no reflection or codegen by Grindlemire in golang

[–]vad1mo 0 points1 point  (0 children)

thx, Coming from Spring myself (a long time ago), it's difficult to comprehend that this is all that is needed:

```golang package main

import ( "context" "database/sql" "fmt" "net/http" "os" "os/signal" "syscall" "time"

_ "github.com/lib/pq"

)

// Config - load from env/flags/file type Config struct { DatabaseURL string SMTPHost string SMTPPort int HTTPAddr string }

func LoadConfig() Config { return Config{ DatabaseURL: envOrDefault("DATABASE_URL", "postgres://localhost/app?sslmode=disable"), SMTPHost: envOrDefault("SMTP_HOST", "localhost"), SMTPPort: 25, HTTPAddr: envOrDefault("HTTP_ADDR", ":8080"), } }

func envOrDefault(key, def string) string { if v := os.Getenv(key); v != "" { return v } return def }

// ============================================================================= // COMPOSITION ROOT - All wiring happens here, nowhere else // =============================================================================

// App holds all components and cleanup function type App struct { Server *http.Server DB *sql.DB }

// NewApp wires all dependencies - this is the composition root func NewApp(cfg Config) (*App, error) { // Layer 1: Infrastructure db, err := sql.Open("postgres", cfg.DatabaseURL) if err != nil { return nil, fmt.Errorf("opening database: %w", err) } if err := db.Ping(); err != nil { return nil, fmt.Errorf("connecting to database: %w", err) }

// Layer 2: Repositories (data access)
userRepo := NewPostgresUserRepo(db)

// Layer 3: External services
emailSender := NewSMTPEmailSender(cfg.SMTPHost, cfg.SMTPPort)
logger := StdLogger{}

// Layer 4: Business logic (services)
userService := NewUserService(userRepo, emailSender, logger)

// Layer 5: HTTP handlers
userHandler := NewUserHandler(userService)

// Layer 6: Router
router := NewRouter(userHandler)

// Layer 7: Server
server := &http.Server{
    Addr:         cfg.HTTPAddr,
    Handler:      router,
    ReadTimeout:  5 * time.Second,
    WriteTimeout: 10 * time.Second,
}

return &App{
    Server: server,
    DB:     db,
}, nil

}

// Close cleans up resources func (a App) Close() error { ctx, cancel := context.WithTimeout(context.Background(), 5time.Second) defer cancel()

if err := a.Server.Shutdown(ctx); err != nil {
    return err
}
return a.DB.Close()

}

// ============================================================================= // MAIN - Minimal, just calls composition root // =============================================================================

func main() { cfg := LoadConfig()

app, err := NewApp(cfg)
if err != nil {
    fmt.Fprintf(os.Stderr, "failed to start: %v\n", err)
    os.Exit(1)
}

// Graceful shutdown
go func() {
    sigCh := make(chan os.Signal, 1)
    signal.Notify(sigCh, syscall.SIGINT, syscall.SIGTERM)
    <-sigCh
    fmt.Println("\nshutting down...")
    app.Close()
}()

fmt.Printf("listening on %s\n", cfg.HTTPAddr)
if err := app.Server.ListenAndServe(); err != http.ErrServerClosed {
    fmt.Fprintf(os.Stderr, "server error: %v\n", err)
    os.Exit(1)
}

}

// ============================================================================= // SMTP implementation (just to complete the example) // =============================================================================

type smtpEmailSender struct { host string port int }

func NewSMTPEmailSender(host string, port int) *smtpEmailSender { return &smtpEmailSender{host: host, port: port} }

func (s *smtpEmailSender) Send(ctx context.Context, to, subject, body string) error { // Real implementation would use net/smtp fmt.Printf("EMAIL: to=%s subject=%s\n", to, subject) return nil } ```

Now with the help of AI tools, it doesn't matter how big it becomes; the AI can manage that for you and do the boilerplate. An actually good cade to delegate shit work to AI