4 ms·
I love it. But seeing this now, in 2017, is a bit depressing to me. For the last 15 years Microsoft has been putting out the same RAD tools, but based on ASP.N
by mephitix 9y ago
I love it. But seeing this now, in 2017, is a bit depressing to me.
For the last 15 years Microsoft has been putting out the same RAD tools, but based on ASP.NET/C#/Visual Studio. Things like drop-in provider-based OAuth, editing versioned database projects, WYSIWYG UI, etc. Publishing to the web, even the flow of clicking on a button to edit its handler looks like it was based directly on Winforms which is a 12 year old technology.
Why aren't there more of these things out there?
How much time now is spent learning the latest and greatest framework/toolkit/etc. only to spend more time configuring individual components and cobbling them together vs. just getting the product finished and published to users? I don't mean to be cynical but I wish there was some way all these different tools somehow built on each other instead of constantly resetting the dev stacks.
For example, Create React App - I'm constantly impressed by how it has eschewed configuration in favor of getting things done while still having a lot of flexibility. It draws on a lot of great, previous past projects and seems to define the train of thought for other react projects. It seems to me that people like Dan Abramov, Brent Jackson, and others are on the same wavelength which is incredibly powerful for the react community.
There should be a way for that sentiment to extend beyond React, into the database world, the IDE world so that we can collaborate and create more nice things like this.
- viraptor 9y ago> Why aren't there more of these things out there? There are a few - I did like the MS PowerApps recently. But these things work well in an enterprise environment where "works" is important, but "users don't want to kill themselves during interaction" is not. These tools are usually great at putting together a quick CRUD app that fits requirements. But they're typically not flexible enough to give you that finished and polished for users product. If you want to do that rather than a flow of basic forms and tables, you'll start fighting the framework at some point and then think "maybe I should've just used X from the start". Maybe it doesn't have to be that way, but I did see this a lot.
- mephitix 9y ago"users don't want to kill themselves during interaction" - touché :) I agree with you, but taking the create-react-app example again - I can very quickly scaffold a react app with necessary toolsets, built on top of webpack. This gets me up and running without having to mess with webpack config. At some point, I need to break out of these opinionated guardrails and do my own thing. At that point create react app has an 'Eject' feature which opens up the black box and dumps all webpack configuration and scripts for me to hack away on. The Anvil tool seems to have something similar where you can grab all the sources, download, run, and publish it yourself.
- meredydd 9y agoAs a rule, I'm not a fan of the "Eject button" pattern. It's an admission of defeat. It says, "because you needed one advanced feature, I am now dumping you into the Wild West I was previously protecting you from. Good luck!" A much more interesting approach is to acknowledge that your system will always be incomplete, and provide ways of using more complex external features without abandoning simplicity for the other 90% of your project. We call this pattern an "escape hatch", rather than an "ejector seat", because you don't need to jump all the way out at once. Anvil has escape hatches all over the place: * If you need to use code (or hardware) outside our server environment, you can use our Uplink library to connect arbitrary code anywhere in the world to your app - but you still get our drag'n'drop front end and seamless RPC. (You can even use our built-in database from uplink code.) * If you need a browser feature we don't support yet, you can call to/from Javascript with our FFI - but you can still wrap it up in a Python form and use that from our visual designer. * If you need to use a front end that isn't built with the Anvil UI toolkit, you can expose Anvil server functions as REST endpoints and use them from your {iOS|Android|vue.js} app. But you can still use those same server functions from Anvil client code, with full autocomplete. * If you need direct textual access to your source code, or to do advanced version control operations, or to do CI/CD, you can clone your app as a Git repository. But the moment you push those branches back up into Anvil, you can edit your app with all our tools. (The editor will happily represent Git histories that it cannot [yet] create itself.) Give me an escape hatch over an ejector seat any day.
- 9y ago
- Edmond 9y agoI am the developer of Solvent IDE, which attempts to tackle this problem in a comprehensive way, ie from the ground up as a platform: http://codesolvent.com/web-dev/ http://codesolvent.com/web-dev/ It is not as easy a problem as it seems...beyond the technical hurdle, a major obstacle is developers :) While you like this paradigm, I am afraid a lot of developers generally scuff at these types of products.
- desireco42 9y agoFirst, we do really. But also, can you look at the website... You should spend some time explaining better why would I bother learning your product. It is a shame if has nice features, not to put them out, as I couldn't figure out at quick glance.
- mephitix 9y agoI agree it's a tough problem - especially because you want a combination of 'get up and running quickly' with flexibility. At some point you might want to eject out of the entire system and start coding on your own without wysiwyg, etc. That's why I used the Microsoft and CRA examples because I think they (eventually) got it right... CRA especially shows how one single company doesn't have to create the whole ecosystem. There are so many OSS tools that support CRA and build on it.
- ZenoArrow 9y agoRegarding... http://blog.codesolvent.com/2017/03/what-happened-to-sharing-work-with.html http://blog.codesolvent.com/2017/03/what-happened-to-sharing... ... making it onto the front page of HN isn't some mysterious process, it's as a result of people who are viewing https://news.ycombinator.com/newest https://news.ycombinator.com/newest when you posted an article voting it up. Due to the fast churn rate on the 'New' page (and to the lower traffic on the New page) it often a matter of luck if a post reaches the front page, but what it isn't is some kind of conspiracy to exclude new entrants. That aside, your tech looks interesting. What licence(s) is it released under?
- maxwin 9y agoSomeone please create something like this but with React. It makes development faster but retains the flexibility.
- hennsen 9y agoJust do it! :)
- flor1s 9y agoEven your example of Create React App sounds like nicely polished scaffolding a la Ruby on Rails and Django to me.
- wallace_f 9y agoCan I ask, if I understand correctly, your reason for saying this dev stack is depressing is that it is yet another all-new stack. The problem here is the cost-benefit test of re-learning frameworks would fail in comparison to building on additional frameworks? But I guess my question is, is it really depressing, because how would the indutry otherwise motivate giants like MS to innovate without such competition? Or maybe I just misunderstood?