Hacker Newsnew | past | comments | ask | show | jobs | submit | exac's commentslogin

No they do not teach Scientific Realism in schools. We're taught the scientific method and then build upon that.

I can see how someone could misunderstand or forget what they're taught though.


K12 teachers arent educated enough to realize the words they use imply scientific realism.

Respectfully we have had Certbot for 11 years now.


Sorry, there is zero chance I will ever deploy new code by changing a symlink to point to the new directory.


I don't do devops/sysadmin anymore, so this would have been before the age of k8s for everything. But I once interviewed for a company hiring specifically because their deployment process lasted hours, and rollbacks even longer.

In the interview when they were describing this problem, I asked why the didn't just put all of the new release in a new dir, and use symlinks to roll forward and backwards as needed. They kind of froze and looked at each other and all had the same 'aha' moment. I ended up not being interested in taking the job, but they still made sure to thank me for the idea which I thought was nice.

Not that I'm a genius or anything, it's something I'd done previously for years, and I'm sure I learned it from someone else who'd been doing it for years. It's a very valid deployment mechanism IMO, of course depending on your architecture.


Why? What do you prefer to do instead?


Anything less than an entire new k8s cluster and switching over is just amateur hour obviously


why? it works and its super clever. Simple command instead some shit written in JS with docker trash


Ah, the memories of capistrano, complete with zero-downtime unicorn handover

https://github.com/capistrano/capistrano/


Still use php deployer each day and works with symlinks as well. https://deployer.org/


Isn't that the standard way to do that? Why wouldn't you?


Then you are locking yourself out of a pretty much ironclad (and extremely cost-effective) way of managing such things.


Works pretty well for Nix


Worked pretty well in production systems, serving huge amount of RPS (like ~5-10k/s) running on a LAMP stack monolith in five different geographical regions.

Just git branch (one branch per region because of compliance requirements) -> branch creates "tar.gz" with predefined name -> automated system downloads the new "tar.gz", checks release date, revision, etc. -> new symlink & php (serverles!!!) graceful restart and ka-b00m.

Rollbacks worked by pointing back to the old dir & restart.

Worked like a charm :-)


And for Stow[1] before it, and for its inspiration Depot[2] before even that. It’s an old idea.

[1] https://www.gnu.org/software/stow/

[2] http://ftp.gregor.com/download/dgregor/depot.pdf


I really liked stow. My toy distro back in the day was based on it.


that's how some phone OSes update the system (by having 2 read only fs)

that's how Chrome updates itself, but without the symlink part


No snapshotting at all? Thinking about it.. The filesystem does not support it I suppose.



Oh cool. I was a bit confused about not using snapshots and relying on symlinks but it couldn't be so simple. I guess it's just a simple userspace cow mount. https://source.android.com/docs/core/ota/virtual_ab#compress...


not surprised about the chrome part, but pretty shocked at the phone OS part. I know APFS migration was done in this way, but wouldn't storage considerations for this be massive?


what would be more massive would be phones not booting up because of a botched update. this way you can just switch back to the old partition


Not really, because only the OS core is swapped in this way. Apps and data live in their own partitions/subvolumes, which are mutable and shared between OS versions.

The OS core is deployed as a single unit and is a few GB in size, pretty small when internal storage is into the hundreds of GB.


Clearly, there's a wildly baroque stack of abstractions meters deep that is way better than a simple, reliable, well tested, ubiquitous, idiomatic one line solution. Modern software at it's finest.


Nobody's saying you should deploy code with this, but symlinks are a very common filesystem locking method.


How do you add a new page?


This. It is resume-driven development. Especially at startups where the engineers aren't compensated well enough or don't believe the produce can succeed.


As someone who doesn't use React, there is React Native (for iOS & Android), and React (and that can be server-rendered or client-rendered).


There's also React Native Web


I'm sorry what


I find it is a good idea, it allows developers to cleanly define how to structure elements without random divs sneaking in.

It requires a strong design system and it probably makes it harder to use some web APIs but those can be reasonable tradeoffs


Speaking of which, is there a Tailwind CSS equivalent for React Native? I find passing `style` objects around (ala CSS Modules) to be a pain after using Tailwind for so long in web projects.

EDIT: Found one that's going v5 soon, looks nice. https://www.nativewind.dev/


In case you want to use React to make Web sites as well.


They should make a version of that runs as an app on a phone


They have one, it's called React Native Web Native


Twitter is built in React Native Web


There was also react vr


In my career I've seen startups "shut down" and lay off the NA team.

I've seen venture capital acquire startups for essentially nothing laying off the entire product team aside from one DevOps engineer to keep everything running. I've seen startups go public and have their shares plummet to zero before the rank-and-file employees could sell any shares (but of course the executives were able to cash out immediately). I've seen startups acquired for essentially nothing from the lead investor.

In none of these scenarios did any of the Engineers receive anything for their shares.

Yet every day people negotiate comp where shares are valued as anything more than funny money.


The only reason I paid my yearly JetBrains subscription this year was to keep my lower price locked-in. I've been using VS Code all year. I won't renew my JetBrains subscription that I've had since 2009. Sad.


How is that relevant?


I thought you would just use another computer in your house for the flows?

My development flow takes a lot of RAM (and yes I can run it minimally editing in the terminal with language servers turned off), so I wouldn't consider running the local LLM on the same computer.


It's not about which of your computers you run it on, it's about the relative capability of any system you're likely to own vs. what a cloud provider can do. The difference is hilarious - probably 100x. Knowing that, unless you have good reasons (and experimenting/playing around IS a good reason) - not many people would choose to actually base their everyday workflow on an all-local setup.

It's sort of like doing all your work on an 80386. Can it be made to work? Probably. Are you going to learn a whole lot making it work? Without a doubt! Are you going to be the fastest dev on the team? No.


> Another old person thinking they figured out life

I didn't get this impression at all.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: