Developing on dedicated server - Haskell

Welcome to the Functional Programming Zulip Chat Archive. You can join the chat here.

Sridhar Ratnakumar

I have been writing Haskell code all on my dedicated server (more performant than my laptop). I switched to nvim + coc-vim for ghcide support. I must say the IDE feedback comes up rather instantaneously with no visible lag (which is common place with vscode on my laptop).

Sridhar Ratnakumar

The server uses NixOS; so everything is declaratively configured. I can always spin up a new one without manual legwork, say after 1-2 years when upgrading to a better CPU.

That's another benefit of using dedicated servers + NixOS for dev; being able to upgrade whenever you want.

TheMatten

How much does it cost compared to more powerful laptop/desktop?

Sridhar Ratnakumar

My thinkpad cost me ~$4500

Sridhar Ratnakumar

Which is roughly the same as 2 years of renting this server.

Sridhar Ratnakumar

I don't envision generally using the laptop for development more than 4 years. So I could see it being twice as expensive.

Georgi Lyubenov // googleson78

on what project size are you using ghcide?

Sridhar Ratnakumar

ghcjs apps using obelisk -- such as zeus

Contribute to mightybyte/zeus development by creating an account on GitHub.
Georgi Lyubenov // googleson78

for me, even on something like hlint which i would say is no longer in "toy size", it worked with tolerable (<0.1-0.2s) delay on my x220

Georgi Lyubenov // googleson78

referring to "display type information"*

Sridhar Ratnakumar

I imagine that this style of development might facilitate more varied lifestyle -- like working more from coffee shops without worrying about portability of device.

TheMatten

Hmm, I get pretty responsive HLS on desktop that could be considered powerful in 2016 - though I came from 600€ laptop, so :big_smile:

Sridhar Ratnakumar

Yea, desktops are great - but my lifestyle is such that I don't want to own anything I can't carry in a flight (standing desk + 5k monitor is an exception right now)

Sridhar Ratnakumar

I have a Thinkpad P71, fwiw.

Sridhar Ratnakumar

I use this server to host apps and internet exposed services as well. This was the original reason for renting it. One NixOS machine to conquer them all.

TheMatten

Haha, that laptop basically matches specs of my desktop :big_smile:
I'm currently considering some medium config of XPS 13 or equivalent ThinkPad for programming "on-the-go"

Sridhar Ratnakumar

yup, but it still is way slower (when compiling haskell) compared to the dedicated server which is on AMD Ryzen 7 3700 PRO

Sridhar Ratnakumar

if next year, something faster for same/cheaper price comes along - i can 'jump ship' without thinking much.

James King

I'm still on a T450 :sweat_smile:

James King

But the desktop I'm streaming from is a might bit more powerful.

Daniel Díaz Carrete

Do you re-create your server each time you want to develop, or do you leave it up? I snapshot and destroy my development vps each time I leave it, and then restore the snapshot when I come back. This is because snapshot storage is cheaper than leaving the server up. All that back-and-forth is a bit tedious however, so I wrote a small utility to help with that https://github.com/danidiaz/thrifty-sailor

Thrifty sailors in the #digitalocean keep their pet development droplets as snapshots when they are not using them. - danidiaz/thrifty-sailor
Vance Palacio

I was doing something somewhat similar. I bought a pretty beefy (at the time) desktop PC (for ~300$, refurbished lol), got a free domain, setup dynamic dns for it, and set it up as an ssh server. Then I bought a refurbished chrome book.

I liked this setup because Chromebooks have great battery life. I was spending a lot of time out of the house each day, so I was able to get both powerful specs, and good battery life, and at a pretty nice price too

Torsten Schmits

I do the same, but from home. Ryzen 3600 workstation and laptop with touchscreen, working over ssh, very comfy

Sridhar Ratnakumar

I have a pixel slate. It is too small though. I future I would ideally get a nice Chromebook that has thunderbolt. Hope google releases a Pixelbook 2.

Rizary

This is what I'm trying to have in the next couple of months. @Sridhar Ratnakumar do you ever consider cloud service (compute optimized) so you can switch on and off ?

Sridhar Ratnakumar

Transient Cloud VMs could work if their performance / price point is comparable to dedicated servers, but I doubt it?

Sridhar Ratnakumar

https://www.notebookcheck.net/More-evidence-that-Google-is-developing-a-new-AMD-powered-2-in-1-Pixelbook-hits-Geekbench.459719.0.html

Google threw a curveball with the Pixelbook Go last year, eschewing the 2-in-1 design of the Pixelbook and the Pixel Slate. However, new evidence suggests that it will return to a 2-in-1 design and that it has already put the device into development. Featuring a choice of AMD Ryzen processors, it would be the first Pixel Chromebook to with a 15 W TDP.