10 ms·
Ugh, now not only you don't own your code (ahem copilot cough) you also don't own the tools to develop code. The direction the web is taking is worrisome. The
by gosukiwi 5y ago
Ugh, now not only you don't own your code (ahem copilot cough) you also don't own the tools to develop code. The direction the web is taking is worrisome.
The issue is not so much senior devs, but new devs. If they start off with things like that, there' so much magic under the hood, they won't understand how anything works. They don't understand they don't own shit until it's too late.
I remember when I first saw the JAM stack, basically they use external services for *EVERYTHING*, claiming it's "The future™". They don't even own the data/database.
I'd rather make things better for users, rather than companies. Stallman's essay [The Right to Read](https://www.gnu.org/philosophy/right-to-read.html https://www.gnu.org/philosophy/right-to-read.html) gets more and more scary.
- patrickserrano 5y ago> If they start off with things like that, there' so much magic under the hood, they won't understand how anything works. I feel like there's an ever growing tension in software development where magic like this makes us more productive but also more vulnerable. Maybe we need to develop better benchmarks for "knowing enough" so when the magic fails, we're not starting at zero trying to figure out what went wrong.
- vbezhenar 5y agoHire wizard consultant to fix magic and let the rest to rely on magic.
- swypych 5y agoownership issues aside, the "magic" under the hood is not a problem assuming it actually works. Its when the magic breaks, or works in unexpected ways, then it becomes a problem. Magic is also progress, and progress is usually good.
- zerox7felf 5y agoI think you could look at it in terms of sustainability: "magic" progress has the potential of "magically" vanishing if it's inner workings are not sound, reliant on an unreliable other, etc.
- deleted 5y ago[deleted]
- sergiotapia 5y agojamstack is very fucked up to me, glad I'm not going crazy. you basically offload EVERYTHING to 3rd parties.
- brundolf 5y agoThere's nothing about jamstack that requires you to use third-parties (except the CDN part, I guess, but that's just a mirror). You could just as easily host your own CMS and database and call out to it the same way. It's just that like auth, logging, etc, CDNs have been neatly abstracted out and service-ified in such a way that it's often more economical to go third-party. But that choice is orthogonal to jamstack.
- gosukiwi 5y agoI agree on that, and was going to add that, to be fair to the stack. But the reality is, while that's doable, most people just use third-party services, at least that's my experience.
- paulgb 5y agoSure, but I think that's true in non-Jamstack code as well. Datadog, Snowflake, BigQuery, DynamoDB, Google Analytics, etc. are all examples that I've seen used by non-Jamstack software, and most have a fair bit of lock-in.
- sergiotapia 5y agojamstack certainly presents itself first and foremost as "use third party services".
- gosukiwi 5y agoI initially learned about it because a junior dev asked for advice on one of his/her apps. It was a college app, simple, it just gathered info from students. But, they offloaded all data to a third-party database. So you are actually giving a company a lot of sensitive, personal information about a fucking college. He/She was concerned (and with good reason) about the safety of data. Had to learn the bad way :(
- keithwhor 5y agoThe same thing was said about every programming abstraction to ever be introduced. How do we expect people to build memory-efficient applications when they become reliant on a garbage collector?
- Raed667 5y agoThe difference is that you don't pay a monthly subscription to use a garbage collector.
- minimaxir 5y agoGarbage-collection-as-a-service would get a ton of venture capital though.
- deleted 5y ago[deleted]
- wyldfire 5y agoOh wow, AR/VR mark/sweep applications! Those VR rooms get messy, who is going to clean them up?
- gosukiwi 5y agoHahaha cloud-based garbage collection. Made me giggle.
- ransom1538 5y agoAt patent office right now with this. My attorney said will go through the USPO like butter.
- jacobr1 5y agoThere are a ton of a companies that help you track cloud spend, while some of it is architectural, most is really about waste, old ec2 image backups, s3 with no lifecycle policies ... garbage
- geofft 5y ago
- wbobeirne 5y ago> If they start off with things like that, there' so much magic under the hood, they won't understand how anything works. They don't understand they don't own shit until it's too late. I'm sure this has been said dozens of times throughout the years as we've built more and more tools of abstraction. As software gets more complicated, it's OK if not everyone fully understands every part of the stack. People specialize, and then become experts at their small scope. Or even if they're not experts at their slice, not every company needs a 10x code wizard who understand the system up and down. Some companies just need someone lightly technical to mess with website templates or write simple scripts and services.
- cle 5y agoGiven the whole outrage over Apple taking advantage of customers' willingness to hand over control of their phones to them, I hope folks can see the parallels here and reject this. At this point Microsoft's strategy around GitHub, VS Code, Copilot, etc. should be pretty obvious, and we should all be running for the hills.
- dividedbyzero 5y ago> At this point Microsoft's strategy around GitHub, VS Code, etc. should be pretty obvious As someone not following this closely, what would that strategy be?
- didibus 5y agohttps://en.m.wikipedia.org/wiki/Embrace,_extend,_and_extinguish https://en.m.wikipedia.org/wiki/Embrace,_extend,_and_extingu...
- deleted 5y ago[deleted]
- geofft 5y agoWhat are they embracing, how are they extending it, and how do they plan to extinguish it? My understanding of EEE is that it involves taking some competitive product/standard, making a cool MS version of it, and then killing off the standard version - e.g. implementing a barely sufficient POSIX layer on Windows, getting customers who have "POSIX" as a purchasing requirement to switch, and then getting them onto the NT API. Most of the examples on that wiki page have been unsuccessful (IE trying to EEE HTML, Outlook trying to EEE SMTP, etc.), because they weren't able to get enough people to rely on the extended version and stop using the standard thing. What is the analogy here? Microsoft wants to embrace and extend... compiling software? and will kill off... existing ways of compiling software? How will this work?
- z77dj3kl 5y ago
- samlambert 5y agoSuch a stale take. Can I assume you are pretty much against the cloud in general?
- gosukiwi 5y agoI'm not against the cloud, I use it in a daily basis. I don't mean you have to phisically own your servers. But it's not the same, to me, having your MySQL or Posgres DB up in the cloud, than using things like Firebase. I just don't like the direction of moving the development environment to the cloud. It makes it easier to just consume third-party services and a) Don't understand how anything works, and b) Don't own anything. If you know, fully aware, what the cloud implies, then sure, use it, but it's dangerous when the decision comes out of ignorance. I guess there's not really much you can do about it though. People will do whatever is easier, and not everyone wants to know how things actually work.
- geofft 5y agoI assume a huge part of why GitHub is okay with this is that VS Code / Codespaces and Azure are both products from the same company. :) I do think there's a serious autonomy question here, and I think companies do actually care a lot about maintaining their autonomy from other companies, and in many cases the incentives align a lot. The whole stack here seems like something that you can run internally / self-host: - Codespaces are specially-configured containers. All the standard infrastructure for running containers (Docker, Kubernetes, etc.) is FOSS and is quite reasonable to run internally. It's not even like OpenStack where it's a knockoff product of what the major cloud vendors run: it's literally what the cloud vendors run. - Shallow clones, pre-built running containers, etc. are all deployment practices, not products. - You can ssh into a codespace. The big problem here in my eyes is that it's reliant on VS Code, whose remoting stuff is not FOSS (and, having tried it at my own workplace pointing it at our self-hosted Kubernetes, it's been a pain to get it to work well with our authentication setup, proxies, etc. without access to the code and we have a number of open bugs filed). I think the challenge is for a free-software IDE to adopt the VS Code model of the IDE running locally but executing code (including running the LSP backend) remotely. And, in a sense, Emacs already supports this just fine with TRAMP. It's just that the experience of using Emacs and the experience of using any modern IDE (VS Code, any of the JetBrains IDEs, whatever) are very different... and none of them are FOSS. If you have a FOSS IDE, I think you can get this whole setup working well in a way where you have autonomy over the setup and where you can understand the details just fine. And even if you're using VS Code, you can set all of this up in a way where you're not contacting any external services.
- sly010 5y ago> VS Code, whose remoting stuff is not FOSS Do you have more details on this? I thought VC Code just uses the language server protocol for remote editing, which supposed to be an open standard. What stops say neovim adding full LSP support? edit:formatting
- geofft 5y agoLSP is definitely an open standard and you can make that work just fine. What I mean is that the components of VS Code itself that do remote execution are not open source, so if it's VS Code that you're running, you're a bit at MS's mercy for how you make it work (my current issue is that it downloads a VS Code remote agent into the container, and that download doesn't work right inside our corporate network, and there's no way to modify that). If you're not running VS Code, then this isn't relevant to you and I'd imagine you can get a good experience via Neovim using LSP + netrw.
- AYBABTME 5y agoThe real problem that Codespace for stuff like the GitHub codebase solves, is not having to bring up the dev environment. Non trivial, organically certifiably grown commercial software has bunch of services that all eat different things in winter. And things like the Rails monolith that GitHub's main service is, have a tendency of being rude to a dev's laptop, squatting the place with whatever port and file they want laying around, installing packages and software to variously namespaced-or-not locations. If you deal with any set of service, they'll all have various hygiene standards and run well or not on your machine, depending on wether your machine looks like the core dev's machine. And then everyone famously wants a custom work machine with freedom to manage it however they want. Codespace stuff is a way out of insanity. It's a mediated common ground. You could standardize on Docker or Vagrant or whatever, but they come with a lot of pitfalls and the local dev story with them all kind of suck. Codespace on the other hand is a solution that mostly doesn't suck. It's actually a pretty decent experience.
- upbeat_general 5y agoI believe codespaces does directly rely on docker containers that you can customize…
- TheRealDunkirk 5y ago> And things like the Rails monolith that GitHub's main service is, have a tendency of being rude to a dev's laptop FUD. Everything is neatly handled by rvm (or rbenv) and bundler. You can even use gemsets if you want to be really anal about it. It all goes in version-controlled user directories. I keep my main Mac machine, my work Windows machine, and the production Linux boxes all running the same versioned stack just fine.
- AYBABTME 5y agoWhat do you mean FUD? Maybe you've got your own way of doing things that works well so far for you with your current projects, but a ton of people don't live with the same experience, and when they do reach a comfortable spot, it's only comfortable until they move to a new set of projects or company.
- deleted 5y ago[deleted]
- rglover 5y ago> If they start off with things like that, there' so much magic under the hood, they won't understand how anything works. They don't understand they don't own shit until it's too late. Bingo. The inevitable rug pull is going to be very, very expensive/catastrophic for a lot of people (though, profitable if you understand the underlying systems).
- apalmer 5y agoThis may not be what you are referring too BUT I can say as a .Net developer it's amazing how little .Net devs know about how the low level dev related stuff works because visual studio holds there hand. I have blown people's minds by showing them how to just call msbuild or git from the command line etc... I think it's changing since dotnet core took over in that space but had a good 10 year run where generally no one at various work places had any understanding of what visual studio was really doing and it did bite us in the ass at times.
- gosukiwi 5y agoYes, IDEs are similar in a way that they abstract lot of stuff, so people end up depending on them. I don't mind IDEs, but I encourage learning what they actually do behind scenes, so you won't be completely useless when you don't have them. I think that's one of the biggest issues I have with codespaces.
- superjan 5y agoThere’s two sides to that coin. In visual studio, most of the time you don’t need to bother to see what’s under the hood, and you can focus on feature development. In that way, their ignorance can be a good sign. The flip side is when your stuff won’t build, it can be an ordeal to figure out why, but thankfully it does not happen a lot, and they can leave it to the local experts.
- Ericson2314 5y agoFree software won, the commons ossified as no one cared to invest in fundamental ways, new layers are slapped on to hide the cruft, and the pendulum swings back to proprietary competition.
- BiteCode_dev 5y agoIt's funny because we told people not to trust big companies, they tell us we are paranoid, they do it, they pay the price for it, then they say we were right, then they do it again. MS changed. Google changed. Apple changed. Why do one expect github to never turn evil ? Haven't learned enough from history ? Don't let them control your entire stack! Don't let anybody control the entire of anything. There is a difference this time though. This time, most of us will say it only once.
- swiley 5y agoIt's over once we don't have control of the compilers. Look at the iPhone.
- lawwantsin17 5y agogive up so easy.
- echelon 5y agoiPhone is the direction everything is trending. Fight this bullshit. Call your pro-breakup / anti-trust representatives and give them the reasons this is bad for you and your career. Tell them the narrative and give them ammunition to fight this. Google, Amazon, Apple, and now Microsoft deserve regulations and/or dissolution.
- brundolf 5y agoI don't understand the panic. This isn't a black-box system, it's github. Owning your artifacts is as simple as setting up a job to automatically clone the repo a couple times a day (assuming your entire company is working through the cloud interface and not a single person already has a local checkout). Lots of companies put their entire databases in AWS - owned by a company that's already evil, no speculation required - where the egress charges make offsite backups a challenge. And western civilization hasn't collapsed yet. If GitHub changes its policies one day or shuts down the service... just push to a new repo and switch over to regular workstations.
- 5y ago
- api 5y ago> The direction the web is taking is worrisome. It's 100% economic. "Everything has to be free" means there is no money to be made in selling actual applications. That means the industry pivots to SaaS since the cloud is DRM and by running apps remotely you can charge rent and make piracy impossible. As a bonus you get the user's data, which you can do anything you want with in most cases. As a bonus SaaS can also claim to be open source if only the client code is open, or if all the code is open but the SaaS still holds all the data and has the network effect. So you get those open source virtue points for free while still locking up the data or the network. Of course the other response to "everything has to be free" is surveillance capitalism.
- 908B64B197 5y ago> The issue is not so much senior devs, but new devs. If they start off with things like that, there' so much magic under the hood, they won't understand how anything works. They don't understand they don't own shit until it's too late. Any good CS/Engineering program should have the students build and use a dev environment they configured to their liking. If the only dev environment used is wrapped into some IDE magic I would be very skeptical of the program.
- lhorie 5y agoSometimes I amuse myself by thinking that fantasy games are actually a thinly disguised sci-fi commentary on the direction of modern programming. Take for example the Protoss race in Starcraft or the Sheika tribe in Breath of the Wild - the premise is basically that there's a highly advanced society using the remnants of amazing ancient technology that they themselves no longer understand.
- ducktective 5y agoJonathan Blow - Preventing the Collapse of Civilization https://www.youtube.com/watch?v=pW-SOdj4Kkk https://www.youtube.com/watch?v=pW-SOdj4Kkk
- echelon 5y agoWhy should you own your code or your device? Why should you trust your computer? Why should your career be safe? People are fungible resources to be used when convenient and agreeable. Say or do the wrong thing, or have your utility dip below a threshold, and you can be removed. It's happening.
- yellowbanana 5y agoIt's amazing how github is not open source, the biggest host of open source software is closed source?
- hypothesis 5y agoAnd it might be fine as long as underlying building blocks are open sourced (git, etc). There are open-source alternative(s) that support import of most things from github.
- arthur_sav 5y agoMy biggest fear is giving up control to corporations. It starts with the honeymoon phase and once they control the market... they can dictate who has access, pricing, government backdoors etc...