zlacker

[return to "The Day AppGet Died"]
1. benatk+ud[view] [source] 2020-05-28 00:58:16
>>lostms+(OP)
I don't want to support this company. What are good alternatives to GitHub, TypeScript, npm, and Visual Studio Code (besides Atom)?
◧◩
2. donmcr+Xx[view] [source] 2020-05-28 04:27:19
>>benatk+ud
The smaller you are, the greater the risk of adopting SaaS like GitHub IMO, so I've used a lot of the alternatives. I try to run everything I can behind the firewall:

- Gitea for a light weight Git GUI. I don't want pure GitHub SaaS and with GitLab you need to drink the Kool-Aid and marry your workflow to it. GitLab is also really stubborn about their business model and the pricing sucks once you get off the free version. Use the Enterprise Edition in unlicensed mode if you decide to try it.

- Drone for CI. CI is my biggest concern in terms of vendor lock in and Drone has an extremely generous (free), no BS license for small developers. It can be self hosted and the plugin system looks pretty decent. IE: I don't have to rely on them to add functionality I desperately want / need. I don't trust GitHub to never screw us with Actions and I don't think it's possible to self host the server components of actions (for free). I don't trust GitLab to never screw us with feature tiers where new development goes into higher tiers only.

- Nexus for repositories and packages. This is harder than firing up some SaaS service, but it's got pretty much anything you could ever want from a package store / repository / cache. It's also been around for 10+ years and Sonatype has never tried to play any pricing games or engaged in underhanded attempts to leverage it in an effort to shift everyone to SaaS. Warranted or not, I trust them more than Microsoft and GitLab.

- Traefik as a sidecar proxy doing SSL termination for the above services. Once it's set up it just runs without any hassle.

I've fallen off my fair share of bandwagons (hello Adobe Flex) and now whenever I choose technology to use, I always do a mental exercise where I consider the impact of having the vendor abandon me tomorrow. Don't trust anyone when it comes to promised features or promises of fair dealing, reasonable prices, etc.. Disconnect the internet and whatever you're left with are they only things you can truly rely on.

You could keep using the current version of TypeScript even if Microsoft jumps the shark with it, so you might as well take advantage of it IMO. GitHub, Codespaces (VS Code), Actions, etc. are all going to work towards putting your development process onto Azure. Mark my words. It'll happen and everyone will be paying per CPU cycle for things we used to insist on having control of.

JetBrains makes good editors. They give you a perpetual license for old, outdated, versions of the apps if you drop your subscription which is BS. It should be the current version. Besides that though, they're pretty decent. They have a nice, consistent release cadence and the personal license prices are really reasonable compared to the cost of SaaS. For example, I pay $150 USD / year for everything they make compared to Codespaces (VSCode Online) having an estimated monthly price of $23.30 per month for 100 hours / month of use (lol - maybe x2 that). Think about how it's going to work out if you're married to an online only workspace where your only options are to pay up or to lose the ability to work.

Keep in mind though, the risk of being unproductive usually outweighs the risk of being price gouged and mistreated by SaaS vendors. If you're creating $2k+ / week of value, it makes a lot of sense to pay for everything. If you don't, the person down the street will and they'll probably out-compete you if they're writing code while you're being a sysadmin.

◧◩◪
3. Conan_+By[view] [source] 2020-05-28 04:36:19
>>donmcr+Xx
I like your list, though I would add Pagure[1] as an option for a GitHub alternative, simply because I like the "open data" principle also applied to project data. And extensibility is nice if you want to support custom workflows. :)

[1]: https://pagure.io/pagure

[go to top]