HN user

__mp

358 karma
Posts8
Comments110
View on HN

I enjoy Opus on personal projects. I don’t even bother to check the code. Go/JavaScript/Typescript/CSS works very well for me. Swift not so much. I haven’t tried C/C++ yet. Scala was Ok.

Professionally I hardly use the tools for coding, since I’m in an architecture role and mostly write design docs and do reviews. And I write the occasional prototype.

I have started building tools to integrate copilot (Opus) better with $CORP. This way I can ask it questions across confluence and github.

Leveraging Claude for a project feels very addictive to me. I have to make a conscious effort to stop and I end up working on multiple projects at the same time.

you have to ask it to profile and optimize the code for you. Then have it document the changes and run it in a loop. It’ll do wonders.

I asked a cursor agent to do the same for a geotiff to pmtiles converter. It managed to optimize the performance from tens of days to half a day for the case I wanted to solve.

"Computer Systems: A Programmer's Perspective" is a great introductory systems textbook on everything going on in a computer.

For more advanced C/C++ developers I can recommend "The Linux Programming Interface" - (https://man7.org/tlpi/). It is a GREAT compendium for writing code against the POSIX API. I have a (legal) copy of this book on all the computers I have access to.

"The Database Redbook" - (http://www.redbook.io) is a valuable source on database implementations.

"Compilers: Principles, Techniques, and Tools" (Dragon Book) is a great starting point. The book is out of print and but I think it should still hold up for most basic use-cases.

I understand. But as a long-time programmer I like to explore new programming languages or APIs by working on a small project. I start with a first prototype to get the feel of the language, before I look into extended documentation. Chat GPT helps with this use-case.

It's also more fun to have something which can be easily extended than to start from scratch.

When writing a small application in Go I had great success asking Chat GPT specific questions. It helped me figure out which packages I needed to use and how to interact with them.

I understand that this might not fit your use-case, but it's worth a try. Just be aware that it tends to hallucinate APIs.

I like

- https://www.meteoblue.com - check out the multi model, the multi model ensemble , the meteograms and the weather maps! Sadly the app itself is not as good as the website.

- https://yr.no - One of the few "free" providers with ECMWF model data (Norway has open data, that's why the data is free)

- https://www.windy.com/ - ECMWF, GFS and ICON. I don't like their presentation, but the available data is quite nice.

If you want a DarkSky replacement API, then checkout out https://pirateweather.net/ (GFS only, sadly :/ )

Hugo is very fast in updating a website. Unless you have thousands of blog posts I would not bother.

You can self-host it on a "cheap" webhost and rsync the changes (that's the way I do it). Or you can integrate it with Github and host it with

- Netlify https://gohugo.io/hosting-and-deployment/hosting-on-netlify/

- AWS Amplify https://gohugo.io/hosting-and-deployment/hosting-on-aws-ampl...

- Cloudflare Pages https://developers.cloudflare.com/pages/framework-guides/dep...

to name a few. The hugo site has a couple of howtos.

Some hosting solutions require that the entire website is stored in a separate branch, others regenerate the HTML through a CI pipeline and store it in an object store.

Hugo in combination with the Congo Theme (see https://github.com/jpanther/congo) has scratched this itch for me. The theme is well thought out and has all the features I need.

There's the usual youtube and vimeo integration, but also

- integration with Flowcharts through mermaid https://jpanther.github.io/congo/samples/diagrams-flowcharts...

- charts through Chart.js https://jpanther.github.io/congo/samples/charts/

- and even LaTeX support: https://jpanther.github.io/congo/samples/mathematical-notati...

I faced similar issues with the Swiss keyboard layout. I suggest switching to the “US International“ layout and use the dead keys to obtain the umlauts. There’s also a keyboard option that enables a umlaut menu with a long press on the keyboard- if you really want to avoid the dead keys (this might help: https://apple.stackexchange.com/questions/254094/character-a...).

The Apple “English International“ keyboard has a big enter key - if you dislike the small enter key of the US keyboard layout.

For me, the eGPU setup is not worth the benefits. I am also waiting for Apple Silicon to streamline my setup.

I have a MacMini + eGPU. Every time I (re)boot the machine I have to remember to remove the remove the eGPU: Otherwise I cannot enter the filevault password. This is super annoying since the machine seems to have crashed every time I want to use it (even without an eGPU).

Previously I used the eGPU with an 13” MPB and the experience was annoying in different ways: Simply unplugging the eGPU kills the programs using it. Every time I wanted to “undock” the MBP I had to remember to click to remove the eGPU from the MBP: otherwise half the programs running are killed/not responsive.

I also use Fastmail to host my calendar and contacts - next to my email. I enjoy the web interface and lI especially like that the iOS integration just works.

0) Get a cheap virtual/dedicated machine.

1) Install docker and docker-compose

2) Setup traefik, a reverse proxy, in docker (good starting point: https://docs.traefik.io/user-guide/docker-and-lets-encrypt/ ).

3) Run $docker container (ghost, wordpress...). I typically use one docker-compose file for each domain. "expose" is not necessary because the requests are proxied by traefik.

Here's a docker-compose sample for a website available under my-website.com:

    version: '3'
    
    services:
        web:
            container_name: my-website.com-nginx
            image: nginx
            restart: unless-stopped
            volumes:
                - ./data:/usr/share/nginx/html
            labels:
              - "traefik.docker.network=web"
              - "traefik.enable=true"
              - "traefik.basic.frontend.rule=Host:my-website.com"
              - "traefik.basic.port=80"
              - "traefik.basic.protocol=http"
    
    networks:
        default:
            external:
                name: web

There are probably more elegant ways to do this, however I found it quite effective for my setup.

A fact missing in this article is that dams in Switzerland are used for energy storage nowadays. It used to be the case that during lunchtime hydro produced most of the peak energy. Atomic power was used to pump the water into the dams during the night. Nowadays solar and wind, mostly from northern Germany, provide so much energy througout the day that it is more efficient to pump water into dams during lunchtime. It is unclear if these big dams can be run profitably.

More context: https://www.nzz.ch/schweiz/aktuelle-themen/pumpspeicherwerk-... (German)

I use it on my own server, a dedicated quad-core machine with 64 GB RAM (hetzner.de). Mainly because I host a multitude of different websites that require different technologies: PHP, Rails, Node, Go and Python. Setting everything up with Docker makes management a breeze and I can easily relocate and backup the entire setup to a different server.

I backup everything daily to my Synology at home.